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

发布于 2024-10-06 03:54:15 字数 589 浏览 0 评论 0原文

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']

我做错了什么?

HTML:

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

Controller:

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

What I'm trying to get is a list returned. Something like:

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

What am I doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

平定天下 2024-10-13 03:54:15

您的示例不完整,但您必须先解码变量:

from formencode import variabledecode

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

如果您想要 blah: ,您还应该更改该行

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

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

Your example is incomplete but you must decode your variables before:

from formencode import variabledecode

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

You also should change that line if you want blah:

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

to:

blah = formencode.ForEach(formencode.validators.String())
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文