Поле множественного выбора доступа в колбе

У меня есть мультиселекция в html файле, например:

<select multiple id="mymultiselect" name="mymultiselect">         
        <option value="1">this</option>       
        <option value="2">that</option>       
        <option value="3">other thing</option>
</select>

Когда я получаю доступ к полю mymultiselect в flask/python через:

request.form['mymultiselect']

или с помощью функции request.args.get он возвращает только один выбранный элемент. Я узнал, что для получения всех выбранных элементов мне нужно добавить [] к имени поля, например:

<select multiple id="mymultiselect" name="mymultiselect[]">       
        <option value="1">this</option>       
        <option value="2">that</option>       
        <option value="3">other thing</option>
</select>

Я вижу, просматривая данные сообщения в firebug, что это работает, но я в любое время пытаюсь получить доступ к этому полю в flask/python, он возвращается как null или None.

Как вы получаете доступ к этим полям многозадачной формы, которые имеют "[]" в конце их имени? Я попытался добавить "[]" к имени поля в коде python, но это, похоже, не работает.

Ответы

Ответ 1

Вы хотите использовать функцию getlist(), чтобы получить список значений:

multiselect = request.form.getlist('mymultiselect')

Вам не нужно добавлять [] к имени, чтобы сделать эту работу; на самом деле, [] не поможет, не используйте его вообще.