Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
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 для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить