aro*_*ick 22 ruby-on-rails devise
使用Devise将用户重定向到她退出后当前所在页面的最佳做法是什么?
该色器件文档说,重写以下(在应用程序控制器):
def after_sign_out_path_for(resource_or_scope)
# logic here
end
Run Code Online (Sandbox Code Playgroud)
这很容易.但是,我将上一页设置为会话变量,如下所示:
session[:return_to] = request.fullpath
Run Code Online (Sandbox Code Playgroud)
问题是,当您注销时,会话被销毁,并且顶级方法在会话被销毁后发生,这意味着您无法再访问它.我想把它放在一个类变量或类似的东西中,但想看看SO的想法.
Oli*_*ves 33
如果您始终使用单击注销链接的页面,则可以在请求中使用referrer.
def after_sign_out_path_for(resource_or_scope)
request.referrer
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13574 次 |
| 最近记录: |