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

Класс Jinja2Template

Класс Jinja2Template наследуется от базового класса BaseTemplate и обеспечивает интеграцию шаблонизатора Jinja2 в приложение Bottle. Первым параметром передаётся исходный код шаблона в виде строки, вторым - словарь с настройками окружения Jinja2. Класс применяется для создания объекта шаблона, который затем можно отрендерить с переданными данными.

Синтаксис

Jinja2Template(source, [env])

Пример

Давайте создадим простой шаблон Jinja2 и отрендерим его с переданным именем:

from bottle import Jinja2Template tpl = Jinja2Template('Hello, {{ name }}!') res = tpl.render(name='user') print(res)

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

"Hello, user!"

Пример

Давайте применим Jinja2Template вместе с классом Bottle и вернём отрендеренный шаблон из маршрута:

from bottle import Bottle, Jinja2Template app = Bottle() @app.route('/') def index(): tpl = Jinja2Template('Hello, {{ name }}!') return tpl.render(name='user') app.run()

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

Hello, user!

Пример

Давайте отрендерим список, переданный в шаблон:

from bottle import Jinja2Template source = '''{% for item in items %}{{ item }} {% endfor %}''' tpl = Jinja2Template(source) res = tpl.render(items=[1, 2, 3, 4, 5]) print(res)

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

"1 2 3 4 5 "

Пример

Давайте передадим дополнительные настройки окружения Jinja2 вторым параметром:

from bottle import Jinja2Template tpl = Jinja2Template( 'Hello, {{ name }}!', {'trim_blocks': True} ) res = tpl.render(name='abcde') print(res)

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

"Hello, abcde!"

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

  • функцию jinja2_template,
    которая создаёт и рендерит шаблон Jinja2 за один вызов
  • декоратор jinja2_view,
    который автоматически рендерит результат функции через Jinja2
  • класс MakoTemplate,
    который представляет адаптер для шаблонизатора Mako
  • функцию template,
    которая рендерит шаблон через SimpleTemplate
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить