Этот вопрос довольно похож на [1], за исключением того, что я использую Rails 2.3.5 (да, старый) и полный новичок в RoR. У меня есть две модели, Configfile и Signoff.
Я хочу найти все конфигурационные файлы, в которых количество подписей <2. Конечно, я мог бы сделать это, отфильтровав массив вручную, но эта база данных велика и довольно медленная. </p>
class Configfile < ActiveRecord::Base
belongs_to :computer
has_many :signoffs,
:dependent => :destroy
end
и
class Signoff < ActiveRecord::Base
belongs_to :configfile
end
Это похоже на то, что должно быть довольно легко сделать в Rails, но я не могу понять это.
Мой запрос до сих пор выглядит так, и я не получил ничего, что могло бы ограничить его числом подписей.
configs = c.configfiles.find(:all,
:include => :signoffs,
:order => 'filename')
[1] Запрос Rails 3 при условии подсчета ассоциации