1

我的网站上有一个列表,对于匿名用户和登录用户来说都是一样的。我使用会话字典来存储数据。但是当我注销时,我会丢失会话值,因为 django.contrib.auth.views.logout 使用 session.flush() .....如果我通过删除会话进行自定义注销.flush() ,我无法注销。有人能告诉我如何覆盖flush()..或其他一些我们可以为匿名和登录用户创建一个通用列表的方法。

4

1 回答 1

2

假设您有一个名为“user_list”的列表

def logout_view(logout):
    # Do whatever pre conditions you have here.
    my_list = request.session['user_list']
    logout(request)
    # Now Django would have flushed your previous sessions and created a new session.
    request.session['user_list'] = my_list
    return HttpResponse() # Or render to response i.e whatever you do.

现在确保也为匿名用户创建了一个会话。休息一切都会奏效。希望它对你有用。

于 2013-05-30T12:04:48.183 回答