2009-07-30 5 views
2

私はアプリケーションコントローラでbefore_filterを使用します。 このフィルタは、1つのコントローラで2つのアクションを除くすべてのコントローラに使用する必要があります。アプリケーションコントローラでのbefore_filterの使用

この例外はどのように定義できますか?

ありがとうございます!

+0

もうこの[SO post] [1]ではもっと説明があります。 [1]:ここhttp://stackoverflow.com/questions/5072786/except-not-working-in-before-filter-in-application-controller-routing-problem – raidfive

+0

基本的に重複して質問します。http ://stackoverflow.com/questions/9367847/before-filter-syntax-when-you-want-to-except-controller-abc – mmrobins

答えて

0

アプリケーションのコントローラでは、言及することができます。

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] 

警告:再度、すべてのコントローラでメソッド名が一意であることを確認してください。

関連する問題