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

Правило EqualTo

Правило EqualTo применяется к полю формы и проверяет, что введённое значение совпадает со значением другого поля. Первым параметром передаётся имя поля, с которым сравнивается текущее. Вторым необязательным параметром идёт сообщение об ошибке.

Синтаксис

EqualTo(fieldname, [message])

Пример

Давайте создадим форму с двумя полями пароля и проверим их совпадение:

from flask import Flask, render_template, request from flask_wtf import FlaskForm from wtforms import PasswordField, SubmitField from wtforms.validators import EqualTo app = Flask(__name__) app.config['SECRET_KEY'] = 'abcde' class MyForm(FlaskForm): password = PasswordField('Password') confirm = PasswordField('Confirm', validators=[EqualTo('password')]) submit = SubmitField('Send') @app.route('/', methods=['GET', 'POST']) def index(): form = MyForm() if form.validate_on_submit(): return 'ok' return render_template('index.html', form=form)

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

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

Если пароли совпадают, результат выполнения кода:

ok

Пример

Давайте зададим своё сообщение об ошибке:

from flask import Flask, render_template from flask_wtf import FlaskForm from wtforms import PasswordField, SubmitField from wtforms.validators import EqualTo app = Flask(__name__) app.config['SECRET_KEY'] = 'abcde' class MyForm(FlaskForm): password = PasswordField('Password') confirm = PasswordField('Confirm', validators=[EqualTo('password', message='Passwords must match')]) submit = SubmitField('Send') @app.route('/') def index(): form = MyForm() return render_template('index.html', form=form)

Теперь при несовпадении полей форма покажет сообщение 'Passwords must match'.

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

  • класс FlaskForm,
    который создаёт форму Flask
  • правило DataRequired,
    которое проверяет обязательность поля
  • правило Length,
    которое проверяет длину значения
  • метод validate_on_submit,
    который проверяет форму при отправке
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить