Класс Blueprint
Класс Blueprint создаёт объект-заготовку для
группы маршрутов и функций. Первым параметром
передаётся имя чертежа, вторым - имя модуля
импорта. Готовый чертёж регистрируется в приложении
через метод register_blueprint.
Синтаксис
from flask import Blueprint
bp = Blueprint(name, import_name, [url_prefix])
Пример
Давайте создадим чертёж и повесим на него
обработчик адреса '/':
from flask import Flask, Blueprint
bp = Blueprint('main', __name__)
@bp.route('/')
def index():
return 'hello'
app = Flask(__name__)
app.register_blueprint(bp)
Результат выполнения кода:
hello
Пример
Давайте передадим префикс URL при регистрации чертежа:
from flask import Flask, Blueprint
bp = Blueprint('users', __name__)
@bp.route('/')
def index():
return 'users page'
app = Flask(__name__)
app.register_blueprint(bp, url_prefix='/users')
Результат выполнения кода для адреса /users:
users page
Пример
Давайте зададим префикс прямо при создании чертежа и примем параметр из URL:
from flask import Flask, Blueprint
bp = Blueprint('user', __name__, url_prefix='/user')
@bp.route('/<name>')
def user(name):
return name
app = Flask(__name__)
app.register_blueprint(bp)
Результат выполнения кода для адреса /user/abcde:
abcde
Смотрите также
-
метод
route,
который вешает обработчик на адрес -
метод
register,
который регистрирует чертёж в приложении -
атрибут
url_prefix,
который задаёт префикс адресов чертежа -
атрибут
name,
который хранит имя чертежа