我正在使用 FormView 从用户那里获取一些输入。然后,我尝试将其中一些数据设置到会话中,以便在表单验证并重定向用户后使用。但是数据丢失了。
风景:
class SomeFormView(FormView):
template_name = 'something.html'
form_class = SomeForm
def form_valid(self, form):
self.request.session['some_key'] = 'some value'
# According to manual, this should work
self.request.session.modified = True
# Hail Mary
self.request.session.save()
return super().form_valid(form)
如果我在self.request.session
重定向之前查看内容,它将具有我设置的值:'_session_cache': {'some_key': 'some_value'}
但是当我到达重定向时,数据无处可寻。我在 Django 3.1.1 和 Django 2.2.16 上对此进行了测试,两者的行为相同