На веб-сайте, который я создаю с помощью Flask, я использую WTForms для проверки отправленных форм. В одной форме я отправляю список значений с помощью такой формы (скрытые поля генерируются на стороне клиента с использованием js):
<form action="" method="post" id="prop-form">
<input type="hidden" name="ids[]" value="54511ea9c1a36b4e910ce52a">
<input type="hidden" name="ids[]" value="54511ea9c1a36b4e910ce52d">
<input id="title" name="title" size="30" type="text" value="">
<input type="submit" value="Save this form">
</form>
На стороне Flask я могу легко получить содержимое ids[]
, используя следующий код:
print request.form
print request.form.getlist('ids[]')
распечатывает:
ImmutableMultiDict([('ids[]', u'54511ea9c1a36b4e910ce52a'), ('ids[]', u'54511ea9c1a36b4e910ce52d'), ('title', u'Blablabla')])
[u'54511ea9c1a36b4e910ce52a', u'54511ea9c1a36b4e910ce52d']
Но когда я создаю SelectMultipleField
в своей wtform следующим образом:
ids = SelectMultipleField('ids[]')
а затем попытаться получить эти значения, я получаю пустой список:
print form.ids.data # prints out []
Любая идея, как я мог бы имитировать поведение request.form.getlist('ids[]')
с помощью WTForms? Все советы приветствуются!
FieldList
- person Doobeh   schedule 29.10.2014id[]
. Когда я использую WTF, я также использую его для создания формы, сFieldList
он используетid-1
id-2
и т. д. Я ответил на аналогичный вопрос здесь: stackoverflow.com/questions/26302943/ - person Doobeh   schedule 29.10.2014