javascript - How to manually inject NullBooleanField data in form? -


i'm using widget framework unfortunately moves inputs outside <form> tags in dom. i'm therefore having create hidden inputs , set them javascript them passed in request.post.

the trouble is, though i'm using "yes", "no", , "unknown" values as per docs here, they're getting translated none in cleaned_data. here's example taken couple of print functions in relevant view:

request.post.urlencode()

n_var=yes&n_short=unknown&p_widget=unknown&n_long=yes&verbatim=blah ...

form.cleaned_data

{'n_var': none, 'n_short': none, 'p_widget': none, 'n_long': none, 'verbatim': 'blah' ...

the form modelform, , saves fields aren't nullbooleanfield fine. extract:

class myform(forms.modelform):     n_var = forms.nullbooleanfield(required=false)     n_short = forms.nullbooleanfield(required=false)     p_widget = forms.nullbooleanfield(required=false)     n_long = forms.nullbooleanfield(required=false)     verbatim = forms.charfield(required=false, max_length=32) #saves fine 

what's going on? how manually nullboolean data form?

the widget's display values 'unknown', 'yes', 'no'.

however, if @ source code, see submitted values '1', '2', , '3' (for 'unknown', 'yes', 'no' respectively).

you should use strings hidden inputs.


Comments