フィルタの前にはどのような順序がありますか?具体的には、before_actionフィルタはどのような順序で発生するのですか?たとえば、これは動作しますか:フィルタの前にはどのような順序がありますか?
class A < ActionController::Base
before_action :set_user
def set_user
@user = something
end
end
class B < A
before_action :set_post
def show
render @post
end
def set_post
@post = @user.posts.first
end
end
「B#show」は機能しますか?将来の参照のためにフィルタ順序の規則は何ですか?私はRailsのドキュメントでこれを見つけることができません。
'' '' ''クラスが* ActionController *のようなコントローラから継承していませんか? '' B''インスタンスに対してアクションが実行されると、 '' 'set_user''のような継承されたフィルタが最初に呼び出されます。 –
申し訳ありません。修正しました。 –
注文を修正する方法:http://stackoverflow.com/questions/5711797/how-can-i-specify-the-order-that-before-filters-are-executed –