2016-05-31 2 views
0

Я пытаюсь получить форму с полем выбора в Django. Мой код формы выглядит так:Как изменить выбранную по умолчанию опцию в Django ChoiceField?

UNIVERSITIES = (
    ('North South University', 'North South University'), 
    ('BRAC University', 'BRAC University'), 
) 

class SearchForm(forms.Form): 
    """ 
    Form used to search for a professor. 
    """ 
    professor_name = forms.CharField(
     label="Enter a professor's name or name code", 
     max_length=255, 
     widget=forms.TextInput(attrs={ 
      'placeholder': 'Search for a professor', 
      'required' : 'required', 
     }), 
    ) 
    university = forms.ChoiceField(
     label="Select your university", 
     choices=UNIVERSITIES, 
    ) 

В форме я получаю «Северный Южный Университет» по умолчанию. Как изменить это на пустую строку? То есть выбор не будет выбран. Спасибо.

ответ

2

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

university = forms.TypedChoiceField(
    label="Select your university", 
    choices=UNIVERSITIES, 
    empty_value="--- youre empty value here ---", 
) 
2

Вы можете сделать что-то вроде этого:

UNIVERSITIES = (
    (None, ''), 
    ('North South University', 'North South University'), 
    ('BRAC University', 'BRAC University'), 
) 

Поскольку значение будет None по умолчанию пользователь должен будет выбрать один из вариантов. Если вы хотите изменить текст на что-то вроде 'Select your university', вы можете сменить '' на это или вы можете добавить Label в ChoiceField.

Смежные вопросы