如何避免在每个页面上检查用户状态?

时间:2018-04-10 05:40:13

标签: ruby-on-rails devise ruby-on-rails-5

我可以检查用户并注销某些条件。 但是总是会检查ApplicationController,如下所示。

before_action :authenticate_user!, :check_should_logout

我不想在每次请求时致电check_should_logout

有没有解决方案?

2 个答案:

答案 0 :(得分:2)

您可以在各个控制器类中使用onlyexceptbefore_action过滤器选项。

before_action :check_should_logout, only: [:action_1, :action_2]

OR

before_action :check_should_logout, except: [:action_1, :action_2]

答案 1 :(得分:1)

before_action :authenticate_user!, :check_should_logout, only: [:action1, :action_2]

before_action :authenticate_user!, :check_should_logout, except: [:action1, :action_2]

不是在ApplicationController中提供这个,而是应该在各自的控制器中提供它。