Допустим, у меня есть отношения многие ко многим между пользователями и группами. Пользователь может быть членом группы, или его приложение все еще ожидает рассмотрения.
class User < ActiveRecord::Base
has_many :applications
has_many :groups, :through => :applications
end
class Group < ActiveRecord::Base
has_many :applications
has_many :users, :through => :applications
end
class Application < ActiveRecord::Base
belongs_to :user
belongs_to :group
attr_accessible :pending # boolean : is the application still pending or not
end
Я хочу добавить область в свой класс группы, чтобы выбрать группы, у которых более 10 не ожидающих пользователей.
Я могу получить таких членов, как это
Group.joins(:applications).where('applications.pending = ?', false)
Но я не нашел достаточно ресурсов для создания области, которая подсчитывает количество результатов этого запроса и возвращает группы, в которых это число больше 10
Если у вас есть решение или ресурсы по этой теме, это очень мне поможет