簡體   English   中英

django 1.3驗證以編程方式創建的表單字段

[英]django 1.3 validate form field that are programmatically created

我有一種形式,可以在運行時以編程方式生成字段。 在表單內部的clean方法中,當我打印cleaned_data時,我什么也沒得到。 是否可以訪問在運行時生成的字段的數據?

向導

        for i in lobj:
            form.fields['list[%s]' % i.id] = forms.CharField(label=i.title, widget=forms.CheckboxInput)

表格

class SelectList_Form(forms.Form):

    param = forms.CharField(widget=forms.HiddenInput, required=False)

    def clean(self):
        super(SelectList_Form, self)
        cleaned_data = self.cleaned_data
        try:

            print cleaned_data
            if cleaned_data['1-list[]']:
                print cleaned_data['1-list[]']


        except Exception, e:
            raise forms.ValidationError(_('Must select at least one of the lists below'))

mudhusudan使我注意到了我錯過了在超級調用中放置干凈方法的事實。 下面的代碼是修復

class SelectList_Form(forms.Form):

    param = forms.CharField(widget=forms.HiddenInput, required=False)

    def clean(self):
        super(SelectList_Form, self).clean()
        cleaned_data = self.cleaned_data
        try:

            print cleaned_data
            if cleaned_data['1-list[]']:
                print cleaned_data['1-list[]']


        except Exception, e:
            raise forms.ValidationError(_('Must select at least one of the lists below'))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM