Py学习  »  user3002411  »  全部回复
回复总数  1
11 年前
回复了 user3002411 创建的主题 » 自定义/删除Django选择框空白选项

我找到了解决办法!!

但不适用于foreignkey:-)

也许我能帮你。 我查看了django源代码,发现在django.forms.extras.widgets.selectedatewidget()中,一个名为none_value的属性等于(0,-----),所以我在代码中这样做了

class StudentForm(ModelForm):
    class Meta:
        this_year = int(datetime.datetime.today().strftime('%Y')) 
        birth_years = []
        years = []

        for year in range(this_year - 2, this_year + 3 ):
            years.append(year)
        for year in range(this_year - 60, this_year+2):
            birth_years.append(year)

        model = Student
        exclude = ['user', 'fullname']
        date_widget = SelectDateWidget(years=years)

        date_widget.__setattr__('none_value', (0, 'THERE WAS THAT "-----" NO THERES THIS:-)'))
        widgets = {
            'beginning': date_widget,
            'birth': SelectDateWidget(years=birth_years),
        }