我将在我的数据库中保存有关比赛的数据.我希望能够通过某些标准搜索比赛 - 尤其是比赛类型.
比赛类型保存在元组中.稍微缩短的例子:
COMPETITION_TYPE_CHOICES = (
(1, 'Olympic Games'),
(2, 'ISU Championships'),
(3, 'Grand Prix Series'),
)
Run Code Online (Sandbox Code Playgroud)
这些在模型中使用如此(再次 - 这是模型的缩短/简化版本):
class Competition(models.Model):
name = models.CharField(max_length=256)
type = models.IntegerField(choices=COMPETITION_TYPE_CHOICES)
Run Code Online (Sandbox Code Playgroud)
我不希望在搜索表单中需要字段,因此表单定义如下:
class CompetitionSearchForm(forms.Form):
name = forms.CharField(required=False)
type = forms.ChoiceField(choices=COMPETITION_TYPE_CHOICES,required=False)
Run Code Online (Sandbox Code Playgroud)
我希望ChoiceField中的select小部件显示一个空标签,但我没有得到一个.任何有关这方面的帮助将非常感谢:)
我希望ModelForm中的ChoiceField有一个空白选项(------)但它是必需的.
我需要有空白选项,以防止用户意外跳过该字段,从而选择错误的选项.