wtforms FieldList && validation出现问题...它应该说字段必须有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 form_test.py
错误
{'locality_id':[u‘此字段为必填字段。’,u‘此字段为必填字段。’]}
{'locality_id':无,2,无}
无、2、无
发布于 2011-06-18 20:40:15
看起来在IntegerField祖先中有一个try... except块,它将把所有非It放在process_errors属性中,并且这个类被明确禁止用有效数据以外的任何数据填充数据。不过,我相信您仍然可以在raw_data属性中获得所需的值。
https://stackoverflow.com/questions/6395520
复制相似问题