1

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

私は何を間違っていますか?

4

1 に答える 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())
于 2010-12-05T18:45:30.540 に答える