Django formset error: select fields cause partially filled forms -
i have form utilizes choices argument i've created formset. when page containing formset rendered, fields uses choices argument display drop-down select widgets. forms filled user have no errors. however, forms not filled user have 'this field required' errors other fields fields used select widget.
it appears select field's initial values causing form treated half-filled form , form validation process throws errors required fields not filled.
# form: class ownerform(forms.form): name = forms.charfield(label = 'name', max_length = 20) owner_entity = forms.choicefield(label = 'owner entity', choices = owner_entities) num_of_shares = forms.decimalfield(label = 'number of shares' , min_value = 0.0, max_digits = 5, decimal_places = 2) share_class = forms.choicefield(label = 'share class', choices = share_classes) joined_date = forms.datefield(label = 'joined date', help_text = 'mm/dd/yyyy') # view: # in method: ownersformset = formset_factory(ownerform, = 5) ... # in post method: the_owners_forms = ownerformset(request.post) if not the_owners_forms.is_valid(): the_owners_forms_errors = the_owners_forms.errors
so, question how deal behavior non-filled forms not taken hal-filled forms because of initial value of select method?
how in forms.py
?
by default, select fields have '------' value, , considered invalid when form processed.
empty_choice = ((none, '-------------),) class ownerform(forms.form): ... owner_entity = forms.choicefield(label = 'owner entity', choices = empty_choice + owner_entities) ... share_class = forms.choicefield(label = 'share class', choices = empty_choice + share_classes)
Comments
Post a Comment