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

Атрибут template_folder

Атрибут template_folder применяется к объекту Blueprint и указывает, из какой папки брать Jinja-шаблоны при вызове функции render_template внутри этого чертежа. Значением атрибута является строка с путём к папке относительно корня приложения. По умолчанию используется значение 'templates', то есть общая папка шаблонов приложения.

Когда чертёж зарегистрирован через метод register_blueprint, Flask добавляет его папку шаблонов в общий поиск. Если в чертеже и в приложении есть шаблоны с одинаковым именем, приоритет зависит от порядка регистрации.

Синтаксис

Blueprint(name, import_name, template_folder='templates')

Пример

Давайте создадим чертёж с собственной папкой шаблонов 'bp/templates' и отрендерим из него страницу:

from flask import Flask, Blueprint, render_template app = Flask(__name__) bp = Blueprint('bp', __name__, template_folder='bp/templates') @bp.route('/') def index(): return render_template('index.html') app.register_blueprint(bp)

Теперь создадим сам шаблон:

<p>hello</p>

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

<p>hello</p>

Пример

Давайте передадим переменную в шаблон чертежа и выведем её:

from flask import Flask, Blueprint, render_template app = Flask(__name__) bp = Blueprint('bp', __name__, template_folder='bp/templates') @bp.route('/user') def user(): return render_template('user.html', name='abcde') app.register_blueprint(bp)

Шаблон чертежа:

<p>{{ name }}</p>

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

<p>abcde</p>

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

  • класс Blueprint,
    который создаёт чертёж приложения
  • атрибут static_folder,
    который задаёт папку статических файлов чертежа
  • атрибут url_prefix,
    который задаёт префикс URL для маршрутов чертежа
  • метод route,
    который вешает обработчик на адрес внутри чертежа
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить