我正在使用django 1.3,使用django-formwizard。 我有一个带有2个ModelForms的WizardView,它在创建模式下工作正常(as_view链接在url conf中) 但我不能让它在编辑模式下工作。 当我在视图中时:
return MyWizard.as_view([Form1,Form2], instance_dict={0:instance1, 1:instance2})(request)
上下文中不存在向导实例 如果我这样做:
return MyWizard([Form1,Form2], instance_dict={0:instance1, 1:instance2})
我得到: init ()只需要1个非关键字参数(给定2个)
MyWizard非常基础,只有get_template_names
和done
方法。
答案 0 :(得分:0)
看起来FormWizard构造函数接受一个名为initial
的关键字参数,而不是其他任何东西,这是一个到初始数据字典的字典映射步骤。
def __init__(self, form_list, initial=None):
>>> from testapp.forms import ContactForm1, ContactForm2, ContactWizard
>>> initial = {
... 0: {'subject': 'Hello', 'sender': 'user@example.com'},
... 1: {'message': 'Hi there!'}
... }
>>> wiz = ContactWizard([ContactForm1, ContactForm2], initial=initial)
>>> form1 = wiz.get_form(0)
>>> form2 = wiz.get_form(1)