の git wiki をフォローしていますhas_scope
。
例があります:
# in model
scope :featured, -> whatever
# in controller
has_scope :by_degree
...
@graduations = apply_scopes(Graduation).all
そうしました:
class Account < ActiveRecord::Base
scope :inactive, -> { where(deleted_at: nil) }
end
class Admin::AccountsController < Admin::BaseController
has_scope :inactive
private
def collection
apply_scopes(Account)
end
def end_of_association_chain
@end_of_association_chain ||= super.order(created_at: :desc)
end
end
ビューでコレクションにアクセスするとき(のようにcollection.each
)-このエラーが発生します:
undefined method `each' for #<Class:0x007fbeca533eb0>
授業をするそうです。しかし、オブジェクトの配列が含まれていると思います。
メソッドを追加しようとしましたload
:
collection.load.each ...
しかし、別のエラーが発生しました:
wrong number of arguments (0 for 1..2)
さらにどこを見るべきかわかりません。何か案は?