如何覆盖下拉列表中的默认值

时间:2019-01-05 07:28:54

标签: django django-models django-forms modelform django-widget

在我的Web应用程序中,我有一个使用ModelForm创建的下拉列表,该列表显示效果很好,但是我无法设置“选择一个选项”或“选择一个”之类的默认文本,而是显示默认的“ ----”,我想覆盖它

我已经尝试在小部件中使用forms.ChoiceField,但仍然没有任何作用

string Escape(string v)

DepartmentCreationForm(forms.ModelForm)类:

from django import forms
from . import models
from .models import FacultyData

我希望默认输出为“选择一个”,但实际输出为“ -----”

2 个答案:

答案 0 :(得分:1)

尝试一下:

    class YourForm(forms.ModelForm):
          your_field_name = forms.ModelChoiceField(queryset=FacultyData.objects.all(),empty_label="Select One")

         class Meta:
           model = DepartmentData
           fields = ("__all__")
           widgets = {  something   }

如果它不起作用,请显示您的模型

答案 1 :(得分:0)

在您的模型中尝试类似的操作

         options = (
           ('','Select One'),
           ('One','One'),
           ('Two','Two')
          )
    choice = models.CharField(max_length=100, choices=options)