我需要跟踪一些有关用户的信息,但希望将其保留一段固定的时间,比如一周。
如果我通过request.sessions设置此值,并且用户注销,如果他们稍后重新登录,我可以检索它吗?这一切都假设我的会话通常设置为在30天后过期,如果用户neVer注销。
在考虑上述问题时,我决定将数据存储在一个表中,但我仍然想知道上面的答案以供参考。由于不可靠,我还决定不使用cookies。
答案 0 :(得分:1)
这取决于您的会话后端。但是,默认后端(backends.db
)会在您注销时从会话表中删除该行。
我建议将数据添加到用户个人资料中的字段。即使您不删除数据,使用会话也会出现问题。用户下次登录时,您将无法知道他/她上次使用的会话ID,通常您只能查找会话ID。不是用户ID,因此您可以获得特定用户拥有的所有会话。