Django 如何在每次提交表单时获得下一个表单/页面?
我正在使用django测验应用程序,其中每页有一个问题。当我回答一个问题时,选择一个单选按钮并单击“提交”按钮,如何在下一页中获取下一个问题以及答案将提交到数据库。如果有人帮助我,这将是一个出色的解决方案。请 我写了一个视图,以获取问题并在无线电链接中呈现答案。但是,当我提交答案时,我如何映射url以动态获取每个新问题。非常感谢你。 我需要一个最简单的解决方案。您可以使用它从当前提交的页面指向下一个页面。 例如(为了简单起见,我假设您有一个问题模型,每个问题都指向下一个问题):Django 如何在每次提交表单时获得下一个表单/页面?,django,forms,Django,Forms,我正在使用django测验应用程序,其中每页有一个问题。当我回答一个问题时,选择一个单选按钮并单击“提交”按钮,如何在下一页中获取下一个问题以及答案将提交到数据库。如果有人帮助我,这将是一个出色的解决方案。请 我写了一个视图,以获取问题并在无线电链接中呈现答案。但是,当我提交答案时,我如何映射url以动态获取每个新问题。非常感谢你。 我需要一个最简单的解决方案。您可以使用它从当前提交的页面指向下一个页面。 例如(为了简单起见,我假设您有一个问题模型,每个问题都指向下一个问题): 非常感谢你给出了
非常感谢你给出了这个有价值的答案。
def view_question(request,id):
q = Question.objects.get(id)
if request.method == 'POST':
form = QuestionForm(request.POST)
if form.is_valid():
# this takes care of saving the answer
a = Answer.objects.create(user=request.user, question=q, a = form.cleaned_data['answer'])
# this takes care of moving on to the next question
if q.next_question != None:
return HttpResponseRedirect(q.next_question.get_absolute_url())
# no next question, finished quiz
return HttpResponseRedirect('/done-quiz/')
else:
form = QuestoinForm()
return render_to_response('quiz.html', {'form': form, 'question':q})