我们以前在rails 3.0中使用的非常方便的是范围可重用性。让我们看一个例子。
class Wheel < AR::B
belongs_to :car
scope :deflated, where (:deflated => true)
end
class Car < AR::B
has_many :wheels
scope :out_of_service, joins(:wheels) & Wheel.deflated
end
但它似乎不再适用于3.1,你知道是否有新方法可以做到这一点? 感谢
答案 0 :(得分:1)
我对此的反馈,它确实有效,不确定我的问题来自哪里。
你也可以使用merge()函数,&amp;是一条捷径。
scope :out_of_service, joins(:wheels).merge(Wheel.deflated)
干杯