大家好。。碰到一个问题。。 就是我想在后台让某个用户退出(不经过数据库,就是..不是根据某个特定的字段来判断用户是否退出)。
或者说,某个用户正在网站上,我想让他退出(用户刷新后,就退出网站了)。
直接调用 sign_out user 似乎不行。。。
想删除用户 cookie 关联的 session,又找不到这个 session 保存在哪里……
蛋好痛。。。
user 中加入 forced_out 属性,默认 false,强制退出时更新为 true
在 application controller 中加入
before_action :check_user def check_user redirect_to destroy_user_session_path if user_signed_in? && current_user.forced_out? end
注:手敲未测
@heylonj 啊~谢谢,如果要经过数据库的话,其实就很好办。。可就是不想经过数据库嘛。。。
#2 楼 @moliliang
devise 使用了 warden, 具体 lz 可以去看看源码。
#3 楼 @heylonj 嗯,有注意到~~~ 但是没看到如何操作呢。。。看看先