2010-06-01 47 views
0

好的,這是問題。 想象一下,我有一個只有兩個字段的ModelForm。像這樣:如何創建一個Django ModelForm,以便它的字段有時是必需的,有時不需要?

class ColorForm(forms.Form): 
    color_by_name = forms.CharField() 
    color = forms.IntegerField(widget = forms.Select(choices=COLOR_CHOICES)) 

所以用戶可以輸入一個顏色名稱,從列表中選擇一個。顏色是必需的,但這並不意味着,用戶應該手動輸入。我有做驗證,以便我的代碼檢查用戶是否在下拉列表中選擇了顏色,如果不是,那麼他應該手動編寫它?

回答

7

製作它們都是required=False,但是寫一個clean()方法來檢查其中的一個。示例見the validation documentation

+0

這對我有效!謝謝,丹尼爾! – Graf 2010-06-02 10:36:27

相關問題