2011-07-07 69 views
0

我正在使用django 1.3,使用django-formwizard。 我有一個WizardView有2個ModelForm在創建模式下工作正常(as_view鏈接在url conf中) 但我不能讓它在編輯模式下工作。 當我在視圖中:django1.3 + django-formwizard +初始數據問題

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_namesdone方法。

回答

0

看起來FormWizard的構造函數接受一個名爲initial的關鍵字參數,沒有別的,這是一個字典映射到初始數據字典的步驟。

def __init__(self, form_list, initial=None): 

https://docs.djangoproject.com/en/1.3/ref/contrib/formtools/form-wizard/#providing-initial-data-for-the-forms

>>> from testapp.forms import ContactForm1, ContactForm2, ContactWizard 
>>> initial = { 
...  0: {'subject': 'Hello', 'sender': '[email protected]'}, 
...  1: {'message': 'Hi there!'} 
... } 
>>> wiz = ContactWizard([ContactForm1, ContactForm2], initial=initial) 
>>> form1 = wiz.get_form(0) 
>>> form2 = wiz.get_form(1) 
+0

我已經嘗試過的是,我得到 「的init()恰恰1非關鍵字參數(2給出)」 太 – user833686

+0

溶液:返回MyWizard([Form1中,窗體2] ,instance_dict = {'0':instance1,'1':instance2}) – user833686