我将 Django 的 FormWizard 用于多步骤表单,作为最后一步(保存数据后),我想显示先前输入的表单数据的摘要。
我可以通过重写 done() 方法来实现这一点,如下所示:
def done(self, form_list, **kwargs):
info = self.save_info(form_list[0])
extra = self.save_extra(info, form_list[1])
# how to provide context for redirect?
# return redirect('confirmation.html')
# this works, but uses POST
return render_to_response(
'confirmation.html',
{'form_list': [form.cleaned_data for form in form_list]},
context_instance=RequestContext(self.request)
)
而不是通过 POST 调用确认,我想使用重定向(浏览器后退按钮)。但我不确定如何将 form_list 传递给视图/模板,因为重定向不带上下文。如果有一种干净的标准方法可以做到这一点,有什么想法吗?
注意:数据由匿名用户输入。所以保存的数据和用户没有关联。