Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python wtforms字段列表有问题&&;验证_Python_Wtforms - Fatal编程技术网

Python wtforms字段列表有问题&&;验证

Python wtforms字段列表有问题&&;验证,python,wtforms,Python,Wtforms,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

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 form_test.py

假的

{'locality_id':[[u'此字段为必填项],[u'此字段为必填项。]]}

{'locality_id':[None,2,None]}


[None,2,None]

看起来有一个
试试看。。。除了
IntegerField
祖先中的
块之外,该块将把所有非整数放入
进程\u错误
属性,并且该类特别禁止使用有效数据以外的任何数据填充数据。但是,我相信您仍然可以在
原始数据
属性中获得所需的值。

看起来有一个
尝试。。。除了
IntegerField
祖先中的
块之外,该块将把所有非整数放入
进程\u错误
属性,并且该类特别禁止使用有效数据以外的任何数据填充数据。但是,我相信您仍然可以在
原始数据
属性中获得所需的值。

`class IntegerField(TextField):。。。def process_formdata(self,valuelist):如果valuelist:try:self.data=int(valuelist[0]),除了ValueError:raise ValueError(self.gettext(u'Not a valid integer value'))`我无法从process_formdata()获取“nota valid integer value”异常的原因?为什么我会得到“这个字段是必需的?”?“类整数字段(TextField):。。。def process_formdata(self,valuelist):如果valuelist:try:self.data=int(valuelist[0]),除了ValueError:raise ValueError(self.gettext(u'Not a valid integer value'))`我无法从process_formdata()获取“nota valid integer value”异常的原因?为什么我会得到“这个字段是必需的”?