有没有办法让Django的USStateField()没有预先选择的值?

Con*_*ion 9 django django-models django-forms

我在我的一个模型中使用来自Django的localflavor的USStateField():

class MyClass(models.Model):
   state  = USStateField(blank=True)
Run Code Online (Sandbox Code Playgroud)

然后我从那个班级做了一个表格:

class MyClassForm(forms.ModelForm):
    class Meta:
        model   = MyClass
Run Code Online (Sandbox Code Playgroud)

当我显示表单时,字段"State"是一个预先选中"Alabama"的下拉框.

有没有办法让下拉框显示没有预先选择的值?

Dom*_*ger 10

这似乎是一个已知的问题(虽然我不知道一张票 - 我会仔细检查那里没有它的票,如果没有,请提交它):

from django.contrib.localflavor.us.us_states import STATE_CHOICES
from django.contrib.localflavor.us.forms import USStateField

class YourModelForm(forms.ModelForm):
    class Meta:
        ...

    YOUR_STATE_CHOICES = list(STATE_CHOICES)
    YOUR_STATE_CHOICES.insert(0, ('', '---------'))
    state = USStateField(widget=forms.Select(
            choices=YOUR_STATE_CHOICES))
Run Code Online (Sandbox Code Playgroud)

以上代码来自这里.