РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
317 of 643 menu

Поле формы SelectMultipleField

Класс SelectMultipleField создаёт поле формы в виде выпадающего списка, в котором пользователь может выбрать сразу несколько вариантов. Первым параметром передаётся имя поля, вторым - список вариантов choices в виде пар кортежей. Третьим параметром можно передать дополнительные настройки, например coerce для приведения типов выбранных значений.

Синтаксис

from wtforms import SelectMultipleField field = SelectMultipleField(label, [validators], choices=[])

Пример

Давайте создадим форму с полем множественного выбора и выведем выбранные значения:

from flask import Flask, render_template, request from wtforms import Form, SelectMultipleField, SubmitField app = Flask(__name__) class MyForm(Form): items = SelectMultipleField( 'Items', choices=[ ('a', 'Item A'), ('b', 'Item B'), ('c', 'Item C'), ('d', 'Item D'), ('e', 'Item E') ] ) submit = SubmitField('Send') @app.route('/', methods=['GET', 'POST']) def index(): form = MyForm(request.form) if request.method == 'POST': return str(form.items.data) return render_template('index.html', form=form)

Шаблон для отображения формы:

<form method="post"> {{ form.items }} {{ form.submit }} </form>

Результат выполнения кода при выборе пунктов a и c:

['a', 'c']

Пример

Давайте передадим coerce=int, чтобы значения приводились к числам:

from flask import Flask, render_template, request from wtforms import Form, SelectMultipleField app = Flask(__name__) class MyForm(Form): nums = SelectMultipleField( 'Nums', coerce=int, choices=[ (1, 'One'), (2, 'Two'), (3, 'Three'), (4, 'Four'), (5, 'Five') ] ) @app.route('/', methods=['GET', 'POST']) def index(): form = MyForm(request.form) if request.method == 'POST': return str(form.nums.data) return render_template('index.html', form=form)

Результат выполнения кода при выборе пунктов 1, 3 и 5:

[1, 3, 5]

Смотрите также

  • класс Form,
    который создаёт форму
  • поле SelectField,
    которое создаёт выпадающий список с одним выбором
  • поле RadioField,
    которое создаёт переключатели
  • метод validate_on_submit,
    который проверяет отправку формы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить