我無法找出所有沒有酒吧的Foos的範圍方法。那是:Rails適用於0尺寸的關聯
class Foo < ActiveRecord::Base
has_may :bars
end
class Bar < ActiveRecord::Base
belongs_to :foo
end
我想寫一個範圍方法,返回我沒有酒吧的所有foos。就像這樣:
class Foo < ActiveRecord::Base
has_may :bars
scope :has_no_bars, includes(:bars).where("COUNT(foo.bars) = 0")
end
但我不明白適當的語法。任何幫助?如果更容易使用MetaWhere解決方案,很高興。
你能否支付在Foo表中存儲酒吧的緩存數? (使用計數器緩存) – Dogbert
嗯..可以工作,但我想知道實際查詢應該是什麼。 – MissingHandle