在django中,如果用户注销,是否会删除所有会话数据?

时间:2010-08-05 01:34:10

标签: django session-cookies

我需要跟踪一些有关用户的信息,但希望将其保留一段固定的时间,比如一周。

如果我通过request.sessions设置此值,并且用户注销,如果他们稍后重新登录,我可以检索它吗?这一切都假设我的会话通常设置为在30天后过期,如果用户neVer注销。

在考虑上述问题时,我决定将数据存储在一个表中,但我仍然想知道上面的答案以供参考。由于不可靠,我还决定不使用cookies。

1 个答案:

答案 0 :(得分:1)

这取决于您的会话后端。但是,默认后端(backends.db)会在您注销时从会话表中删除该行。

我建议将数据添加到用户个人资料中的字段。即使您不删除数据,使用会话也会出现问题。用户下次登录时,您将无法知道他/她上次使用的会话ID,通常您只能查找会话ID。不是用户ID,因此您可以获得特定用户拥有的所有会话。