Я не могу заставить Jinja2 прочитать мой файл шаблона.Jinja не может найти путь к шаблону
jinja2.exceptions.TemplateNotFound: template.html
Самый простой способ настроить Jinja2 загрузить шаблоны для приложения выглядит примерно так:
от импорта окружающей среды jinja2, PackageLoader окр = по окружающей среде (погрузчиком = PackageLoader ('yourapplication ',' templates ')) Этот создаст среду шаблонов с настройками по умолчанию и загрузчиком , который ищет шаблоны в папке шаблонов внутри пакета python для yourapplication. , Доступны различные загрузчики и вы также можете написать свой собственный, если хотите загрузить шаблоны из базы данных или других ресурсов.
Чтобы загрузить шаблон из этой среды вы просто вызвать метод get_template(), который затем возвращает загруженный шаблон:
шаблон = env.get_template ('mytemplate.html')
env = Environment(loader=FileSystemLoader('frontdesk', 'templates'))
template = env.get_template('template.html')
Мое дерево (я активизирован venv @frontdesk)
.
├── classes.py
├── labels.txt
├── payments.py
├── templates
├── test.py
└── venv
Кроме того, в примере класса PackageLoader '' templates'' является относительным путем каталога, в котором хранятся шаблоны (относительно пакета 'frontdesk'). – mareoraft