Правило URL
Правило URL применяется при описании поля формы
для проверки того, что введённое значение является
корректным URL-адресом. Первым параметром передаётся
сообщение об ошибке, которое будет показано пользователю.
Правило допускает наличие схемы http, https и
других, а также домена и пути.
Синтаксис
URL([message])
Пример
Давайте создадим форму с полем site и правилом
URL, а затем проверим корректный адрес:
from flask import Flask, render_template
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import URL
app = Flask(__name__)
app.config['SECRET_KEY'] = 'abcde'
class SiteForm(FlaskForm):
site = StringField('Site', validators=[URL()])
submit = SubmitField('Send')
@app.route('/', methods=['GET', 'POST'])
def index():
form = SiteForm()
if form.validate_on_submit():
return form.site.data
return render_template('index.html', form=form)
Результат выполнения кода для адреса https://code.mu:
https://code.mu
Пример
Давайте передадим в правило своё сообщение об ошибке и проверим некорректный адрес:
from flask import Flask, render_template
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import URL
app = Flask(__name__)
app.config['SECRET_KEY'] = 'abcde'
class SiteForm(FlaskForm):
site = StringField('Site', validators=[URL('wrong url')])
submit = SubmitField('Send')
@app.route('/', methods=['GET', 'POST'])
def index():
form = SiteForm()
if form.validate_on_submit():
return form.site.data
return render_template('index.html', form=form)
Результат выполнения кода для адреса abcde:
wrong url
Смотрите также
-
класс
Form,
который описывает форму во Flask -
метод
validate_on_submit,
который проверяет форму при отправке -
правило
Email,
которое проверяет адрес электронной почты -
правило
Regexp,
которое проверяет значение по регулярному выражению