Как переопределить значение по умолчанию в раскрывающемся списке - PullRequest
0 голосов
/ 05 января 2019

В моем веб-приложении у меня есть выпадающий список, созданный с использованием ModelForm, который хорошо рендерится, однако я не могу установить текст по умолчанию, например «Выбрать один вариант» или «Выбрать один», вместо этого он показывает значение по умолчанию » ---- "который я хотел бы переопределить

Я пытался использовать формы. Выбор полей в моих виджетах, но это все равно не имеет никакого значения

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

Класс DepartmentCreationForm (forms.ModelForm):

class Meta:
    model = models.DepartmentData
    fields = ['fid', 'dept_name']

    data = []
    #data.append((None, 'select one'))
    data.append(('20', "---Choose One---"))
    CHOICES = FacultyData.objects.all()

    for v in CHOICES:
        # fname = "%s -- $%d each" % (v.faculty_name, v.created_on)
        data.append((v.id, v.faculty_name))
widgets = {
        'fid': forms.Select(attrs={'class': 'form-control'}),
        'dept_name': forms.TextInput(attrs={'class': 'form-control', 'placeholder': 'Enter Department Name'})
   }

Я ожидаю, что выход по умолчанию будет «Выбрать один», но фактический вывод - «-----»

1 Ответ

0 голосов
/ 05 января 2019

Попробуйте это:

    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   }

Если это не работает, покажите свою модель

...