[Django]-How to setup the initial value in select control?

3👍

You have to set the initial value to the form.field['miembro'] and not the widget, like you did with form.fields['meta'].

def get_form(self, form_class):
    form = super(ProofMSPE, self).get_form(form_class)
    form.fields['miembro'].queryset = self.pipol
    if self.pipol.count() == 1:
        # this line here
        form.fields['miembro'].initial = self.pipol[0]
    form.fields['meta'].initial = self.meta
    form.fields['meta'].widget.attrs['disabled'] = True
    return form

Select output would be:

<select id="id_miembro" name="miembro">
  <option value="">---------</option>
  <option value="2" selected="selected">***@***.mx</option>
</select>

Leave a comment