var*_*tis 2 ruby-on-rails devise ruby-on-rails-3 ruby-on-rails-3.1
当用户与 Devise 的会话超时时,有没有办法获得回调/处理某些操作?
覆盖 DeviseSessionsController 的普通旧方法不起作用:
class SessionsController < Devise::SessionsController
def destroy
#do something
super
end
end
Run Code Online (Sandbox Code Playgroud)
这仅在用户注销时有效,这是有道理的,因为在会话超时时似乎没有调用控制器。有人可以帮我吗?
我发现执行 Warden.before_logout 是最好的解决方案:
# app/models/user.rb
Warden::Manager.before_logout do |user, auth, opts|
#fdsafdsafdsa
end
Run Code Online (Sandbox Code Playgroud)
不幸的是,似乎没有任何方法可以用纯设计来做到这一点。
归档时间: |
|
查看次数: |
3157 次 |
最近记录: |