wtforms字段列表和验证出错。。。 应该说字段必须有Int值,而不是这个字段是必需的 为什么f.data有[None,2,None]值,而不是['def',2,'abc']?在
from webob.multidict import MultiDict
from wtforms import Form
from wtforms import FieldList, IntegerField
from wtforms import validators
class SearchForm(Form):
locality_id = FieldList(IntegerField(u'Locality', [validators.Required()]))
d = MultiDict([('locality_id-0', 'def'), ('locality_id-1', 2), ('locality_id-2', 'abc')])
f = SearchForm(d)
print f.validate()
print f.errors
print f.data
print f.locality_id.data
%python表单_测试.py在
假
{'locality_id':[[u'此字段是必需的。'],[u'此字段是必需的。']]}
{'locality_id':[None,2,None]}
[无,2,无]
看起来在
IntegerField
祖先中有一个try... except
块,它将把所有非int放入process_errors
属性中,并且该类被特别阻止,不允许用有效数据填充数据。但是,我相信您仍然可以获得在raw_data
属性中查找的值。在相关问题 更多 >
编程相关推荐