Django Forms ChoiceField

Django Forms ChoiceField,django,forms,Django,Forms,关于Django ChoiceField,我有两个问题: 这是我的表格: class ContactForm(forms.Form): GENDER = ( (1, _("Mr.")), (2, _("Ms.")), ) prefix = forms.ChoiceField(choices=GENDER) ... 这很好,但是我想知道为什么choicefield不接受默认值 在页面上,它将Mr呈现为所选值,但是如果表单已提交(注意:此字段的

关于Django ChoiceField,我有两个问题:

这是我的表格:

class ContactForm(forms.Form):
   GENDER = (
       (1, _("Mr.")),
       (2, _("Ms.")), 
   )
   prefix = forms.ChoiceField(choices=GENDER)
   ...
这很好,但是我想知道为什么choicefield不接受默认值

在页面上,它将Mr呈现为所选值,但是如果表单已提交(注意:此字段的默认值为required=True),则不会引发错误,而我的表单post数据中的值为“Ms”

其他问题:
{{prefix.get\u prefix\u display}}
似乎不起作用。。这个函数的用法在模型和表单之间有区别吗?

我认为你把表单字段和模型字段混为一谈了。FormField可以使用'initial'参数设置默认选项:

但它在模型中由ModelField表示,可以使用“default”参数为其设置默认值:


谢谢这就是我要找的