在登录时销毁设计用户会话

时间:2012-08-03 16:50:23

标签: ruby-on-rails devise

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

2 个答案:

答案 0 :(得分:0)

我不确定我是否理解您要做的事情,但如果您在UserB登录时尝试使UserA会话无效,那么当他们从不同的地方登录时可能会遇到问题。

答案 1 :(得分:0)

这是一个极端的边缘情况。 UserA登录然后他登录UserB而不退出是不会经常发生的。如果您真的担心它,可以使用闪存消息“已经登录”重定向到站点的主页面。或类似的东西。