バーを持たないすべてのFoosのスコープ方法を理解するのに問題があります。つまり:Rails 0の関連付けのスコープ
class Foo < ActiveRecord::Base
has_may :bars
end
class Bar < ActiveRecord::Base
belongs_to :foo
end
私はバーを持たないすべてのフォースを返すスコープメソッドを記述したいと思います。何かが好き:
class Foo < ActiveRecord::Base
has_may :bars
scope :has_no_bars, includes(:bars).where("COUNT(foo.bars) = 0")
end
しかし、私は適切な構文を理解していません。どんな助け?より簡単にMetaWhereソリューションを使用するのは楽しいです。
バーのキャッシュ数をFooテーブルに保存する余裕はありますか? (カウンタキャッシュを使用して) – Dogbert
うーん。これはうまくいくかもしれませんが、実際のクエリがどのようなものであるべきかを知りたいと思います。 – MissingHandle