在设计中关闭会话

时间:2016-09-23 16:05:31

标签: ruby-on-rails devise

如何在用户成功登录后关闭会话?

当用户成功登录时,他正在进行操作,但在后端,管理员会停用该用户。此时关闭用户会话并重定向到登录页面。

这可以在rails设计中实现吗?

2 个答案:

答案 0 :(得分:0)

current_user使用会话,因此您可以在任何控制器操作中执行reset_session,以将其带回登录屏幕。

答案 1 :(得分:0)

您需要在应用程序控制器上执行before_action,例如:

before_action :check_inactive_user, if: :current_user

def check_inactive_user
  if current_user.inactive?
    current_user.sign_out
    redirect_to root_path, flash: {notice: 'Your user is inactive'}
  end
end