所有页面上的before_action但只有一个

时间:2013-11-11 10:08:23

标签: ruby-on-rails ruby-on-rails-4

我想在尚未创建群组时将所有网页重定向到我的groups页面。我的application_controller中有一个before_action,它为我做了这个。但是,显然,它会陷入循环,因为他在群组页面上也会检查它。我可以将:except用于群组页面吗?如果是这样,怎么样?

我试过了:

before_action :isGroupPresent, except: :groups
before_action :isGroupPresent, except: :group
before_action :isGroupPresent, except: [:group]

2 个答案:

答案 0 :(得分:1)

except参数只接受方法,而不接受控制器名称。

您可以在params[:controller] == 'groups'方法中检查isGroupPresent并相应地更改操作。

答案 1 :(得分:1)

您可以在GroupsController中使用 skip_before_action

skip_before_action:isGroupPresent,仅限:[:new,:create]

http://guides.rubyonrails.org/action_controller_overview.html#filters