我的formencode.variabledecode返回空列表 - Pylons

1 投票
1 回答
518 浏览
提问于 2025-04-16 08:01

HTML:

<input type="text" name="blah-0" value="test" />
<input type="text" name="blah-1" value="another test" />

控制器:

class myvalidator(formencode.Schema):

    allow_extra_fields  = True
    filter_extra_fields = True

    test = formencode.ForEach(formencode.validators.String())

def form_posted(self):
     form_result = myvalidator().to_python(request.params)

     print form_result

我想要的是返回一个列表。类似这样的:

> print form_result['blah']
['test', 'another test']

我哪里做错了?

1 个回答

1

你的例子不完整,但你必须先解码你的变量:

from formencode import variabledecode

def form_posted(self):
     decoded = variabledecode.variable_decode(request.params)
     form_result = myvalidator().to_python(decoded)
     print form_result

如果你想要某个效果,你还应该修改那一行:

test = formencode.ForEach(formencode.validators.String())

改成:

blah = formencode.ForEach(formencode.validators.String())

撰写回答