2012-07-13 3 views
1

formwizard 내에서 formset을 사용하고 싶습니다. 내 urls.py에서Django 1.4 formwizard with formset

class Model1(models.Model): 
    customerid = models.CharField(max_length=20) 
    Name = models.CharField(max_length=40) 

class Model1Form(ModelForm): 
    class Meta: 
      model = Model1 

class Model2(models.Model): 
    product = models.CharField(max_length=100) 
    price = models.DecimalField(max_digits=5, decimal_places=2) 

class Model2Form(forms.Form): 
    product = forms.ModelChoiceField(queryset=Model2.objects.all()) 
    amount = forms.IntegerField(required=False) 

Model2Formset = formsets.formset_factory(Model2Form) 

:

class TestWizard(SessionWizardView): 
def done(self, form_list, **kwargs): 
    return render_to_response('template', { 
     'form_data': [form.cleaned_data for form in form_list], 
    }) 

해당 formset가 난 단지 할 수있는 여러 항목이 있습니다

(r'^testwizard/$', TestWizard.as_view([Model1Form, Model2Formset])), 

나는 양식을 게시의 결과를 볼 수있는 기본보기를 사용 하나의 항목을 참조하십시오 :

{'customerid': u'7676', 'Name': u'7', 'klantnummer': u'7'} [{'product': <Model2: Bike>, 'amount': 7}] 

내가 예상 : 문서에서

{'customerid': u'7676', 'Name': u'7', 'klantnummer': u'7'} [{'product': <Model2: Bike>, 'amount': 7},{'product': <Model2: Plane>, 'amount': 5}] 

이 발견된다 :

WizardView는 ModelForms 및 ModelFormSets을 지원합니다. 또한 initial_dict에> as_view() 메소드는> ModelForm 및 ModelFormSet의 인스턴스를 포함해야하는 instance_dict 인수를 사용합니다. initial_dict와 유사하게이 사전 키 값은 양식 목록의 단계 수와 같아야합니다.

불행히도 나는 여기서 무엇을 의미하는지 확신 할 수 없다.

+0

내가 템플릿에 추가 필드를 렌더링의 jQuery의 formset 사용을 언급하는 것을 잊었다을. formwizard없이 formset 만 있으면 모든 것이 잘 동작합니다. –

답변