django选择框

时间:2012-09-04 07:39:03

标签: django

这是我的django框架的模型代码。如您所见,我从数据库中检索值并通过列表框显示。

这完全正常,但在列表框中只显示值。我需要在列表框中添加诸如“选择”之类的单词。

date_value_list = MeasurementTest.objects.values_list('start_date',flat = True).distinct()
date1 = forms.ModelMultipleChoiceField(queryset = date_value_list, widget = forms.Select, required =  True)

我实际上是在上面的选择框中添加标签或help_text。但它似乎不起作用。

date1 = forms.ModelMultipleChoiceField(queryset = date_value_list, widget = forms.Select, required =  True,help_text="select",label = "select")

上面的代码似乎不起作用。有人可以帮忙吗?

3 个答案:

答案 0 :(得分:0)

从FormField中删除required=True。 并添加empty_label="Select"

您的问题的类似帖子Click here

答案 1 :(得分:0)

我认为您正在寻找empty_label

# A custom empty label
field1 = forms.ModelChoiceField(queryset=..., empty_label="Select value")

# No empty label
field2 = forms.ModelChoiceField(queryset=..., empty_label=None)

答案 2 :(得分:0)

有两个可能的原因。

  • 如果您在表单中将该字段设置为required=True

  • 如果您在blank=False模型中将模型字段设置为MeasurementTest

在这两种情况下,django都会意识到它是必填字段,即使您指定了也不会添加empty_label(因为该字段不能为空)。

  

请注意,如果ModelChoiceField是必需的并且具有默认初始值,则不会创建空选项(无论empty_label的值如何)。

Empty label definition