3
У меня есть адресная форма, которая имеет поле выбора стран. Я хочу установить значение перед загрузкой формы. Как я мог это сделать? Вот форма:Как установить значение для поля выбора в django
from django import forms
from django.utils.translation import gettext as _
from django_countries import countries
from core.api import NcpAPI
class AddressForm(forms.Form):
# first_name = forms.CharField(label=_("First Name"), widget=forms.TextInput(attrs={'class':'form-text required'}))
# last_name = forms.CharField(label=_("Last Name"), widget=forms.TextInput(attrs={'class':'form-text required'}))
# company = forms.CharField(label=_("Company"), widget=forms.TextInput(attrs={'class':'form-text required'}))
street = forms.CharField(label=_("Street/PoBox"), widget=forms.TextInput(attrs={'class':'form-text required'}))
address1 = forms.CharField(label=_("Address1"), widget=forms.TextInput(attrs={'class':'form-text required'}))
address2 = forms.CharField(required=False, label=_("Address2"), widget=forms.TextInput(attrs={'class':'form-text'}))
address3 = forms.CharField(required=False, label=_("Address3"), widget=forms.TextInput(attrs={'class':'form-text'}))
city = forms.CharField(label=_("City"), widget=forms.TextInput(attrs={'class':'form-text required'}))
postal_code = forms.CharField(label=_("Postal code"), widget=forms.TextInput(attrs={'class':'form-text required'}))
country = forms.ChoiceField(label=_("Country"), choices=countries.COUNTRIES, widget=forms.Select())
Больше mantainable: __forms.ChoiceField (LABEL = _ ("Страна"), выбор = страны .COUNTRIES, widget = forms.Select(), default = countries.COUNTRIES [0]) __ например, тогда, если в один прекрасный день ваш выбор изменится, Django не будет разбиваться :) – Ricola3D
@ Ricola3D по умолчанию для моделей, для форм это initial – suhailvs
@suhail, ваш код не будет работать на моем, поскольку я использую sessionwizard. Извините, я забыл упомянуть об этом. – Maverick