標準的な例を考えると:
class Post < ActiveRecord::Base
has_many :comments
end
class Comments < ActiveRecord::Base
belongs_to :post
end
ActiveRecord::Relation
X 以下のコメントを持つすべての投稿のスコープ (つまり) を返したいと思います。問題が解決する場合は、 Active Record Query Interface、Arel、または他の何かを使用してください。
擬似コード:
scope :quiet, lambda { |n| where(comments: { maximum: n }) }
これは、Ruby で簡単に実行できることを認識していますEnumerable#select
。実際には、述語を満たすモデルは 1 つしか存在しないため、データベースで計算することをお勧めします。