Метод register
Метод register применяется к объекту
Blueprint и подключает его к приложению Flask.
Первым параметром передаётся приложение, в
которое регистрируется blueprint. Вторым
необязательным параметром передаётся словарь
options с дополнительными настройками,
например url_prefix.
После регистрации все маршруты, обработчики запросов и ошибок, фильтры шаблонов и другие настройки blueprint становятся частью приложения Flask.
Синтаксис
bp.register(app, [options])
Пример
Давайте создадим blueprint и зарегистрируем его в приложении:
from flask import Flask, Blueprint
app = Flask(__name__)
bp = Blueprint('bp', __name__)
@bp.route('/')
def index():
return 'hello'
bp.register(app)
@app.route('/test/')
def test():
return 'abcde'
Результат выполнения кода для адреса '/':
hello
Результат выполнения кода для адреса '/test/':
abcde
Пример
Давайте передадим префикс URL через параметр
options:
from flask import Flask, Blueprint
app = Flask(__name__)
bp = Blueprint('bp', __name__)
@bp.route('/')
def index():
return 'user'
bp.register(app, url_prefix='/admin')
Результат выполнения кода для адреса '/admin/':
user
Пример
Давайте зарегистрируем blueprint в приложении с шаблоном:
from flask import Flask, Blueprint, render_template
app = Flask(__name__)
bp = Blueprint('bp', __name__)
@bp.route('/')
def index():
return render_template('index.html', text='article')
bp.register(app)
Содержимое шаблона:
<p>{{ text }}</p>
Результат выполнения кода:
<p>article</p>
Смотрите также
-
класс
Blueprint,
который создаёт blueprint приложения -
метод
route,
который регистрирует маршрут внутри blueprint -
метод
add_url_rule,
который добавляет правило URL в blueprint -
атрибут
url_prefix,
который задаёт префикс URL для blueprint