【发布时间】:2017-08-05 15:28:19
【问题描述】:
我正在尝试通过 ajax 和 wtforms 验证表单,我有一个包含这样一个字段的表单:
name = StringField('Name :', description = "enter your name", validators=[InputRequired(message='please enter your name')])
而我的服务器端代码是这样的:
@app.route('/validation', methods=['get', 'post'])
def validation():
data = request.get_json(force = True)
myform = MyForm()
for field in myform:
field.data = data[field.name]
myform.validate()
return jsonify(myform.errors)
我通过 json 发送字段数据,然后将其设置为字段,我检查了它并且它的数据存在于 myform.data 但验证 InputRequired 错误后仍然存在响应。
【问题讨论】:
-
有点不清楚。你能试着解释一下吗:)
-
我从请求中获取表单数据的字典,我想在服务器端填写表单字段并验证它,当我通过我在问题中提到的 for 循环填充字段时,validate()方法似乎没有注意到变化,它在我的表单错误中返回 InputRequired 错误!
-
你为什么要这么做?
-
通过 ajax 验证表单。
-
验证可以在表单类中完成。不确定在 views.py 中验证是否是好方法。