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

Правило IPAddress

Правило IPAddress применяется к полям формы Flask-WTF для проверки того, что пользователь ввёл корректный IP-адрес. Правило поддерживает как IPv4, так и IPv6 адреса. По умолчанию проверяются оба формата, но можно ограничить только одним, передав параметр ipv4 или ipv6.

Синтаксис

IPAddress(message=None, ipv4=True, ipv6=True)

Пример

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

from flask import Flask, render_template from flask_wtf import FlaskForm from wtforms import StringField, SubmitField from wtforms.validators import IPAddress app = Flask(__name__) app.config['SECRET_KEY'] = 'secret' class MyForm(FlaskForm): ip = StringField('IP', validators=[IPAddress()]) submit = SubmitField('Send') @app.route('/', methods=['GET', 'POST']) def index(): form = MyForm() if form.validate_on_submit(): return f"Valid IP: {form.ip.data}" return render_template('index.html', form=form)

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

<form method="post"> {{ form.csrf_token }} <p>{{ form.ip.label }} {{ form.ip }}</p> <p>{{ form.submit }}</p> </form>

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

Valid IP: 192.168.1.1

Пример

Давайте ограничим проверку только IPv4-адресами:

from flask import Flask, render_template from flask_wtf import FlaskForm from wtforms import StringField, SubmitField from wtforms.validators import IPAddress app = Flask(__name__) app.config['SECRET_KEY'] = 'secret' class MyForm(FlaskForm): ip = StringField('IP', validators=[IPAddress(ipv6=False)]) submit = SubmitField('Send') @app.route('/', methods=['GET', 'POST']) def index(): form = MyForm() if form.validate_on_submit(): return f"Valid IPv4: {form.ip.data}" return render_template('index.html', form=form)

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

<form method="post"> {{ form.csrf_token }} <p>{{ form.ip.label }} {{ form.ip }}</p> <p>{{ form.submit }}</p> </form>

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

Valid IPv4: 10.0.0.1

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

  • класс Form,
    который представляет форму Flask-WTF
  • правило Email,
    которое проверяет корректность email-адреса
  • правило URL,
    которое проверяет корректность URL-адреса
  • атрибут errors,
    который содержит ошибки валидации формы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить