Я пытаюсь выяснить, как установить начальное значение ModelChoiceField при его создании (не при создании формы).Ниже приведен очень упрощенный пример того, что у меня есть сейчас, и я хотел бы установить значения по умолчанию для State и Country , когда они рендерится.
Я думал, что этоможет быть сделано в классе SetBillingInfo
в Forms.py
, но не может заставить его работать.Скажем, я хочу по умолчанию Калифорния для штата и США для страны.Есть ли способ установить это?
FORMS.PY
class SetBillingInfo(forms.Form):
state = forms.ModelChoiceField(
queryset=States.objects.all().order_by('group_order','name'),
to_field_name='name',
label = '',
required=False
)
country = forms.ModelChoiceField(
queryset=Country.objects.all().order_by('group_order','name'),
to_field_name='name',
label = '',
required=True
)
VIEWS.PY
billinginfo = SetBillingInfo(initial=request.GET)
return render(request, 'index.html',{'billinginfo': billinginfo})
INDEX.HTML (это не совсем правильно, но вы поняли идею)
{% for field in billinginfo %}
<select class="FormRow">
{{ field }}
</select>
{% endfor %}