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

Метод validate

Метод validate применяется к экземпляру класса Field и запускает процесс валидации поля. Первым параметром передаётся объект формы, к которой принадлежит поле. Если данные не проходят проверку, метод возбуждает исключение ValidationError, а сообщение об ошибке сохраняется в атрибуте errors поля. При успешной валидации метод возвращает True.

Синтаксис

validate(form)

Пример

Давайте создадим простое поле и проверим его значение через метод validate:

from wtforms import Form, StringField, validators class UserForm(Form): name = StringField('Name', [validators.DataRequired()]) form = UserForm() form.name.data = 'abcde' res = form.name.validate(form) print(res)

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

True

Пример

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

from wtforms import Form, StringField, validators class UserForm(Form): name = StringField('Name', [validators.DataRequired()]) form = UserForm() form.name.data = '' res = form.name.validate(form) print(res) print(form.name.errors)

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

False ['This field is required.']

Пример

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

from flask import Flask, render_template from wtforms import Form, StringField, validators app = Flask(__name__) class UserForm(Form): name = StringField('Name', [validators.Length(min=3)]) @app.route('/') def index(): form = UserForm() form.name.data = 'ab' res = form.name.validate(form) return render_template('index.html', res=res, errors=form.name.errors)

Шаблон для вывода результата:

<p>{{ res }}</p> <p>{{ errors }}</p>

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

<p>False</p> <p>['Field must be at least 3 characters long.']</p>

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

  • класс Field,
    который представляет поле формы
  • метод process_formdata,
    который обрабатывает данные из формы
  • атрибут errors,
    который хранит список ошибок поля
  • атрибут data,
    который содержит значение поля
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить