我想在烧瓶中通过Ajax post请求处理wtf表单。
form = LoginForm(request.form)
if form.validate():
.....
.... do something
.....
form.errors['iserror'] = True
return json.dumps(form.errors)
但是我收到了这个错误
文件“/usr/lib/python3.4/json/encoder.py”,第173行,默认提升
TypeError(repr(o)+“不是JSON可序列化的”)
TypeError:l'需要用户名或电子邮件地址。'不是JSON可序列化的
在使用json.dumps之前,是否需要对form.errors进行一些处理?
form.error的输出
{'iserror':是的,'密码':[需要密码。'],'csrf_token':['CSRF令牌丢失'],'用户名':[l'用户名或电子邮件地址是必需的']}
答案 0 :(得分:0)
问题是我的验证信息。不知道为什么我在消息之前有_并导致了这个问题。
password = PasswordField(_("Password"), validators=[
DataRequired(message=_("A Password is required."))])
将表单验证更改为
后工作正常password = PasswordField(("Password"), validators=[
DataRequired(message=("A Password is required."))])