如何将forms.ModelChoiceField应用于模型表单? (Django的)

时间:2015-10-08 08:04:26

标签: django forms

我是一个完全初学者,对小部件等知之甚少,我正在使用一个基于模型的表单,需要有一个下拉选择框,用于饮食偏好。这是我之前尝试做的事情(显然是错误的):

class Register(models.Model):

      dietry_preferences = forms.ModelChoiceField( queryset = "none", "vegetarian", "vegan", "halaal", "kosher", empty_label = "none")

任何人都可以对此有所了解吗?

1 个答案:

答案 0 :(得分:0)

ModelChoiceField与表单有关。目前还不清楚您是否要构建表单或模型。因此,对于模型:

class Register(models.Model):
    PREFERENCES = (
        ('vt', "vegetarian"),
        ('vg', "vegan"),
        ....
    )    
    dietry_preferences = models.CharField(max_length=5, choices=PREFERENCES)

然后你将构建一个模型形式appropriately

参考:Django documentation, choices

否则,对于表格:

class Register(forms.Form):
    PREFERENCES = (
        ('vt', "vegetarian"),
        ('vg', "vegan"),
        ....
    )    
    dietry_preferences = forms.ChoiceField(choices=PREFERENCES)

参考:Django documentation, ChoiceField