vendredi 15 juillet 2016

json.dump throwing “TypeError: {…} is not JSON serializable” on wtf form validation errors

I would like to handle wtf form via Ajax post request in flask.

form = LoginForm(request.form)  
if form.validate(): 
   ..... 
   .... do something
   .....
form.errors['iserror'] = True
return json.dumps(form.errors) 

But I get this error

File "/usr/lib/python3.4/json/encoder.py", line 173, in default raise
TypeError(repr(o) + " is not JSON serializable")
TypeError: l'A Username or E-Mail Address is required.' is not JSON serializable

Do I need to do some processing on form.errors before using in json.dumps ?

Output of form.error
{'iserror': True, 'password': [l'A Password is required.'], 'csrf_token': ['CSRF token missing'], 'username': [l'A Username or E-Mail Address is required.']}

Aucun commentaire:

Enregistrer un commentaire