当用户不想保持登录状态时,我试图清除所有 session 数据。
在 views.py 中
def login(request, *args, **kwargs):
if request.method == 'POST':
if not request.POST.has_key('remember_me'):
request.session.flush()
return auth_views.login(request, *args, **kwargs)
但是当我尝试访问该站点时,它仍然显示用户为登录用户。这有什么问题吗?
请您参考如下方法:
据我了解,如果用户未选中记住我 - 您需要在用户浏览器关闭时使 session cookie 过期。
这可以通过使用 set_expiry(0) 来实现:
Sets the expiration time for the session. You can pass a number of different values:
- ...
- If value is 0, the user’s session cookie will expire when the user’s Web browser is closed.
用法:
request.session.set_expiry(0)
另见:
