Chcę wysychają kilka modeli przesuwając wspólnych zakresów do modułu, coś jak:Współużytkowane lunety przez moduł?
module CommonScopes
extend ActiveSupport::Concern
module ClassMethods
scope :ordered_for_display, order("#{self.to_s.tableize}.rank asc")
end
end
chcę też tworzyć wspólnych specyfikacji, które umożliwiają testowanie modułu. Niestety, gdy próbuję włączyć zakres współdzielony do mojego modelu, otrzymuję:
undefined method `order' for CommonScopes::ClassMethods:Module
Jakieś pomysły? Dzięki!
Nie sądzisz, że lambdas powinien być teraz preferowany? – mdemolin
@mdemolin Wierzę, że wywołanie 'scope' bez lambda jest przestarzałe w szynach 4. – Gazler
dokładnie to, co mówiłem :) (ale myślę, że jest to po prostu preferowana składnia na razie, i nie jest już przestarzała) – mdemolin