Вы бы опубликовали что-то вроде этого (конечно, закодированный URL)
users-0.name=John
users-0.age=21
users-1.name=Mike
users-1.age=30
...
Сделайте это для пользователей 0-N, где N столько же пользователей, сколько у вас, с нулевым индексом. Затем, на стороне Python после выполнения этого через variabledecode
, у вас будет:
users = UserSchema.to_python(request.POST)
print users
# prints this:
{'Users': [{'name': 'John', 'age': '21'}, {'name': 'Mike', 'age': '30'}]}
Значения могут отличаться в зависимости от проверки, выполняемой в вашей схеме. Таким образом, чтобы получить то, что вы ищете, вы должны сделать:
for user in users.iteritems():
print "{name} {age}".format(**user)
Обновление
Чтобы встроить список в словарь, вы должны сделать это:
users-0.name=John
users-0.age=21
users-0.hobbies-0=snorkeling
users-0.hobbies-1=billiards
users-1.name=Mike
...
И так далее, и тому подобное. Шаблон в основном повторяется: {name-N}
вставит N-й индекс в список, начиная с 0. Убедитесь, что он начинается с 0 и значения являются последовательными. .
запускает начало свойства, которое может быть скаляром, списком или словарем.
Это документация, относящаяся к пилонам того, как использовать formencode, для примера посмотрите таблицу 6-3.