У меня есть 4 модели: Person
, School
, Home
, Office
.Получить объекты, имеющие несколько связанных с ними содержимого
Все они имеют атрибуты id
и name
Моя главная модель person.rb:
class Person < ActiveRecord::Base
has_and_belongs_to_many :school, join_table: :school_persons
has_and_belongs_to_many :home, join_table: :home_persons
has_and_belongs_to_many :office, join_table: :office_persons
end
Я хочу найти всех лиц, которые имеют по крайней мере, 10 связанных содержание.
Я попытался объединить его с одной моделью, но я хочу, чтобы содержание, содержащее не менее 10 связанных с ним контента от , все модели.
person.find_by_sql("
SELECT person.*
FROM persons
INNER JOIN office_persons ON persons.id = office_persons.person_id
GROUP BY persons.id
HAVING COUNT(office_persons.art_id) = 10
").count
Как я должен подходить к этому?
Я очистил ваше сообщение ... пожалуйста, найдите время, чтобы просмотреть e dit, ваш пост был полным беспорядком перед –