在应用程序控制器中使用before_filter并且除外

时间:2009-07-30 11:24:46

标签: ruby-on-rails ruby

我在应用程序控制器中使用了before_filter。 除了一个控制器中的两个动作外,该过滤器应该用于每个控制器。

如何定义此例外?

谢谢!

2 个答案:

答案 0 :(得分:6)

答案 1 :(得分: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]

提醒:再次确保方法名称在所有控制器中都是唯一的。