登录后我使用this how-to重定向回当前页面,使用Devise注销。 它几乎总是有效,但有一个案例不是。
我也在注销后重定向到登录页面。没有这种重定向,一切都在起作用。
无效的情况是:当我退出并重新登录时。在登录页面中,我打印会话[:previous url],它是空的,登录后,它会重定向到根路径·
这种行为对我来说似乎很奇怪......有什么想法吗?
更新
这是我提到的重定向。这样,会话[:previous url]在登录页面中为空
def after_sign_out_path_for(resource)
login_path
end
这是没有重定向的方式。这样,session [:previous url]正常工作
def after_sign_out_path_for(resource)
session[:previous_url] || root_path
end
答案 0 :(得分:0)
您需要覆盖Devise的方法after_sign_out_path_for
才能实现此目的。在您的应用程序控制器中添加此方法
def after_sign_out_path_for(resource_or_scope)
request.referrer
end