3

登录用户时,设计似乎不会使以前的会话无效。如果我以 UserA 身份登录,返回登录屏幕并以 UserB 身份重新登录,devise 不会破坏前一个会话并创建一个新会话,但会保留 UserA 会话。我想知道如何在用户登录时调用 Session#destroy。我知道我可以重新实现 Session#create 方法,但据我了解,这将涉及生成所有控制器视图。我想知道是否有更清洁的方法来做到这一点。

4

2 回答 2

0

这是一个极端的边缘案例。用户A 登录然后他以用户B 的身份登录而不注销不会经常发生。如果您真的担心,您可以重定向到网站的主页,并显示“已登录”的闪烁消息。或类似的东西。

于 2012-08-03T23:15:22.427 回答
0

我不确定我是否理解您要执行的操作,但是如果您尝试在 UserB 登录时使 UserA 会话无效,则当他们从不同位置登录时可能会遇到问题。

于 2012-08-03T18:48:33.897 回答