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

Поле формы MonthField

Поле формы MonthField применяется для создания поля ввода, позволяющего пользователю выбрать месяц и год. Оно наследуется от класса Field и использует HTML-тег input с атрибутом type="month". Первым параметром передается имя поля, которое будет использоваться для доступа к данным формы.

Синтаксис

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

Пример

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

from flask import Flask, render_template from wtforms import Form, MonthField, SubmitField app = Flask(__name__) class MyForm(Form): birth_month = MonthField('Birth Month') submit = SubmitField('Submit') @app.route('/', methods=['GET', 'POST']) def index(): form = MyForm() if form.validate_on_submit(): return f"Selected: {form.birth_month.data}" return render_template('index.html', form=form)

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

<form method="post"> {{ form.birth_month.label }} {{ form.birth_month() }} {{ form.submit() }} </form>

Результат выполнения кода для выбранного месяца 2025-05:

"Selected: 2025-05"

Пример

Давайте добавим валидатор для проверки обязательного заполнения:

from flask import Flask, render_template from wtforms import Form, MonthField, SubmitField from wtforms.validators import DataRequired app = Flask(__name__) class MyForm(Form): month = MonthField('Month', validators=[DataRequired()]) submit = SubmitField('Submit') @app.route('/', methods=['GET', 'POST']) def index(): form = MyForm() if form.validate_on_submit(): return f"Month: {form.month.data}" return render_template('index.html', form=form)

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

<form method="post"> {{ form.month.label }} {{ form.month() }} {% if form.month.errors %} <ul> {% for error in form.month.errors %} <li>{{ error }}</li> {% endfor %} </ul> {% endif %} {{ form.submit() }} </form>

Результат выполнения кода при пустом поле:

<ul> <li>This field is required.</li> </ul>

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

  • класс Form,
    который создает основу для формы
  • поле DateField,
    которое позволяет выбрать дату
  • поле DateTimeField,
    которое позволяет выбрать дату и время
  • валидатор DataRequired,
    который проверяет обязательность поля
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить