如何手动创建表单,然后在Flask wtform中验证它?

时间:2015-08-04 22:30:10

标签: python flask flask-wtforms

如何手动填充表单然后验证呢?

class TestForm(Form):
    name = StringField('name', validators=[InputRequired()])
    age = IntegerField('age', validators=[InputRequired()])

我尝试使用任意数据构建表单并验证:

data = {'name': 'bob', 'age': 33}
tform = TestForm(name=data['name'], age=data['age'])
if tform.validate():
    print 'success!'
else:
    print tform.errors

结果打印出错误:

{'age': [u'This field is required.']}

这很奇怪,因为它没有抱怨name,即使我将它们都提供给我的TestForm。我做错了什么?

1 个答案:

答案 0 :(得分:0)

尝试这样做

data = {'name': 'bob', 'age': 33}
tform = TestForm()
tform.name.data = data['name']
tform.age.data = data['age']
if tform.validate():
    print 'success!'
else:
    print tform.errors