ОК, у меня недавно были отличные ответы на вопрос о том, как сделать некоторые подвыборы в запросе activerecord .Теперь у меня есть более сложная ситуация, которую я не могу понять.
Я хочу выполнить поиск по 3 таблицам, которые имеют отношение многие-к-одному с: through, например,
class User << ActiveRecord::Base
has_many :pets
has_many :parasites, :through => :pets
end
class Pet << ActiveRecord::Base
has_many :parasites
belongs_to :users
end
class Parasite << ActiveRecord::Base
belongs_to :pets
end
Теперь предположим, что у меня есть некоторые данные, подобные
users
id name
1 Bob
2 Joe
3 Brian
pets
id user_id animal
1 1 cat
2 1 dog
3 2 cat
4 3 dog
parasites
id pet_id bug
1 1 tick
2 2 flea
3 3 tick
4 3 flea
5 4 tick
Что я хочу сделать, это создать запрос на активную запись, который вернет пользователя, у которого есть домашнее животное, у которого есть тики и блохи (т.е.Пользователь 2 - Джо)
Это настолько далеко от моих навыков activerecord и sql, что я даже не стану показывать вам мои неудачные попытки.