Firefox中的Django会话不起作用 [英] Django session doesn't work in Firefox

查看:139
本文介绍了Firefox中的Django会话不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个搜索视图,可以在会话中保存一些数据以获取另一个视图:

I have a search view that saves some data in a session for another view:

def search(request):
    ...
    if request.method == 'POST':
        form = SearchForm(request.POST)
        if form.is_valid():
            cd = form.cleaned_data
            melk=data(cd)
            request.session['data'] = melk
            request.session['form'] = form
            return redirect('/result/')
    ...

def result(request):
    ...
    melk_list = request.session['data']
    form = request.session['form']
    ...

当我使用Chrome时,一切都很好。但是当我使用Firefox,它第一次工作正常,但之后,每个搜索继续返回我的第一个结果!似乎 request.session 不会在第一次更改后。我试图用 del request.session ['data'] 删除会话,但没有起作用。

When I use Chrome, everything is good. But when I use Firefox, it works fine the first time, but after that each search keeps returning my first result! It seems request.session doesn't change after the first time. I tried to delete the session with del request.session['data'], but that didn't work.

我的会话后端是一个数据库,但Firefox会生成一个会话cookie。

My session backend is a database, but Firefox makes a session cookie.

推荐答案

尝试

request.session.modified = True

这篇关于Firefox中的Django会话不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆