私はアプリケーションコントローラでbefore_filterを使用します。 このフィルタは、1つのコントローラで2つのアクションを除くすべてのコントローラに使用する必要があります。アプリケーションコントローラでのbefore_filterの使用
この例外はどのように定義できますか?
ありがとうございます!
私はアプリケーションコントローラでbefore_filterを使用します。 このフィルタは、1つのコントローラで2つのアクションを除くすべてのコントローラに使用する必要があります。アプリケーションコントローラでのbefore_filterの使用
この例外はどのように定義できますか?
ありがとうございます!
skip_before_filterを使用してください。
アプリケーションのコントローラでは、言及することができます。
before_filter :xxxx, :except => [:name_of_1st_method, :name_of_2nd_method]
注:これらのメソッドの名前は、すべてのコントローラで一意である必要があります。
skip_before_filterは良い解決策ですが、たとえば、すべてのコントローラの特定のメソッドに対してのみアプリケーションコントローラメソッドを使用する場合は、提案された手法が便利です。例:
before_filter :xxxx, :only => [:method_name_in_controller1, :method_name_in_controller2]
警告:再度、すべてのコントローラでメソッド名が一意であることを確認してください。
もうこの[SO post] [1]ではもっと説明があります。 [1]:ここhttp://stackoverflow.com/questions/5072786/except-not-working-in-before-filter-in-application-controller-routing-problem – raidfive
基本的に重複して質問します。http ://stackoverflow.com/questions/9367847/before-filter-syntax-when-you-want-to-except-controller-abc – mmrobins