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

Метод get_template

Метод get_template применяется к объекту Jinja2Templates и возвращает шаблон по его имени. Первым параметром передаётся имя шаблона name в виде строки. Метод ищет файл шаблона в директории, указанной при создании объекта Jinja2Templates. Возвращается объект Template, у которого можно вызвать метод render для получения готового HTML.

Синтаксис

templates.get_template(name)

Пример

Давайте получим шаблон 'index.html' и отрендерим его с контекстом:

from fastapi import FastAPI from fastapi.templating import Jinja2Templates from fastapi.requests import Request app = FastAPI() templates = Jinja2Templates(directory='templates') @app.get('/') def index(request: Request): template = templates.get_template('index.html') html = template.render({'name': 'user'}) return templates.TemplateResponse( request=request, name='index.html', context={'name': 'user'} )

Файл шаблона 'templates/index.html':

<!DOCTYPE html> <html> <body> <h1>Hello, {{ name }}!</h1> </body> </html>

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

<!DOCTYPE html> <html> <body> <h1>Hello, user!</h1> </body> </html>

Пример

Давайте получим шаблон и проверим его имя через атрибут name:

<+python+> from fastapi import FastAPI from fastapi.templating import Jinja2Templates app = FastAPI() templates = Jinja2Templates(directory='templates') @app.get('/') def index(): template = templates.get_template('article.html') return {'template_name': template.name} <-python+>

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

{"template_name": "article.html"}

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

  • класс Jinja2Templates,
    который управляет шаблонами Jinja2 в FastAPI
  • метод TemplateResponse,
    который возвращает готовый HTML-ответ из шаблона
  • атрибут env,
    который хранит окружение Jinja2
  • параметр context,
    который передаёт данные в шаблон
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить