【发布时间】:2018-08-08 07:28:27
【问题描述】:
我正在使用“post”提交表单并使用 request.POST 将其数据传输到另一个视图,但是当我的查询字典到达第二个视图时,它是不完整的。
视图1
def question_filter(request):
if request.method == 'POST':
print('before validation', request.POST)
request.session['question_data'] = request.POST
return HttpResponseRedirect(reverse('qapp:question_preview'))
view2
def question_preview(request):
all_questions = Questions.objects.all()
question_data = request.session.get('question_data')
print(question_data)
question_pk_list = question_data['question_pk']
preview_questions = all_questions.filter(id__in=question_pk_list)
...
return render(request,'apps/qapp/question_preview.html', {somecontext})
我在这里做错了吗?
更新:
before validation <QueryDict: {'topics_all': ['1', '2'], 'csrfmiddlewaretoken': ['...'], 'subtopics_all': ['4', '2'], 'classroom': ['3'], 'difficulty': ['l', 'm']}>
[28/Feb/2018 17:17:39] "POST /question/filter/ HTTP/1.1" 302 0
(in the second view)question data {'topics_all': '2', 'csrfmiddlewaretoken': '...', 'difficulty': 'm', 'subtopics_all': '2', 'classroom': '3'}
【问题讨论】:
-
你能在设置会话之前显示帖子的打印输出吗
-
@Exprator,我已经更新了问题的详细信息,请看一下
-
会话未保存。看看我下面的答案。
标签: python django session view request