这是我的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")
上面的代码似乎不起作用。有人可以帮忙吗?
答案 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的值如何)。