Ruby onレールでこれを行うことは可能ですか?Railsの動的スコープ?
def method(scope: 'all') # so that it would use Model.all by default
Model.scope
end
method(scope: 'last(10)') # to get it to call Model.last(10)
更新:明確化のため、これは特にレールにscopeクラスメソッドに関連しません。混乱を避けるために、当初は尋ねるときに「範囲」という言葉を使わないでください。代わりにmodel_method
と考えてみてください。しかし、最初に述べたように質問を残して、そのように答えられた答えの一つとして歴史を保存する。
あなたはすでに 'Model.all'と' Model.last(10) 'をレールに入れています –
あなたの質問はまったく紛らわしいものです。 –
' Model.all'か 'Model.last(10) 'または' Model.some_other_method'になります。 – Magne