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

Поле формы RadioField

Класс RadioField применяется для создания поля формы, которое отображается как группа радиокнопок. Пользователь может выбрать только один вариант из предложенных. Первым параметром передается имя поля, вторым - метка (label). Параметр choices задает список доступных вариантов в виде списка кортежей (значение, отображение).

Синтаксис

from wtforms import RadioField field = RadioField('label', choices=[('value1', 'Display 1'), ('value2', 'Display 2')])

Пример

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

from flask import Flask, render_template, request from flask_wtf import FlaskForm from wtforms import RadioField, SubmitField app = Flask(__name__) app.config['SECRET_KEY'] = 'abcde' class MyForm(FlaskForm): gender = RadioField('Gender', choices=[('m', 'Male'), ('f', 'Female')]) submit = SubmitField('Send') @app.route('/', methods=['GET', 'POST']) def index(): res = None form = MyForm() if form.validate_on_submit(): res = form.gender.data return render_template('index.html', form=form, res=res)

Шаблон для вывода формы:

<form method="post"> {{ form.hidden_tag() }} <p>{{ form.gender.label }}<br>{{ form.gender() }}</p> <p>{{ form.submit() }}</p> </form> {% if res %} <p>Selected: {{ res }}</p> {% endif %}

После выбора варианта "Male" и отправки формы результат выполнения кода:

Selected: m

Пример

Давайте зададим значение по умолчанию с помощью параметра default:

from flask import Flask, render_template from flask_wtf import FlaskForm from wtforms import RadioField, SubmitField app = Flask(__name__) app.config['SECRET_KEY'] = 'abcde' class MyForm(FlaskForm): choice = RadioField('Choice', choices=[('a', 'A'), ('b', 'B'), ('c', 'C')], default='b') submit = SubmitField('Send') @app.route('/') def index(): form = MyForm() return render_template('index.html', form=form)

Шаблон для вывода формы:

<form method="post"> {{ form.hidden_tag() }} <p>{{ form.choice.label }}<br>{{ form.choice() }}</p> <p>{{ form.submit() }}</p> </form>

При открытии страницы радиокнопка "B" будет выбрана по умолчанию.

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

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