При работе с SimpleTemplate появилось ощущение, что при создании приложений придётся часто повторно использовать различные шаблоны, а также иметь их как осязаемый объект в IDE. Поэтому было написано ЭТО.
Хранит кортеж каталогов, в которых будет произведён поиск файлов шаблонов и их компонентов.
Напрямую данный параметр лучше не менять, а использовать соответствующие методы класса SimpleTmplWrapper, описанные далее.
По умолчанию используется текущий каталог приложения.
| Параметр | Тип | Описание |
|---|---|---|
file_name | str | Имя файла шаблона. Может быть указано без расширения, тогда поиск производится последовательным добавлением расширений tpl, html, thtml, stpl |
**static_params | Любое число именованных параметров | Данные параметры передаются при любом формировании страницы из шаблона в функцию ``SimpleTemplate.render()``, вне зависимости от того, какие параметры переданы или не переданы в момент формирования. Параметры, переданные в момент формирования страницы, естественно имеют приоритет |
Поиск файла шаблона и его компонентов производится в согласно списка каталогов данных в TMPL_ROOT
При вызове объекта, как метода, генерируется непосредственно страница.
Метод может принимать параметры шаблона в качестве именованных параметров данного метода, которые дополняют либо переопределяют параметры заданные в конструкторе объекта.
Задаёт новую директорию для поиска шаблонов, при этом старый список удаляется.
В качестве параметров принимает либо новый каталог, задаваемый в переменную модуля TMPL_ROOT, либо компоненты, которые сводятся вместе с использованием метода os.path.join()
Аналогичен методу set_root(), кроме того, что он не заменяет каталоги а добавляет в список ещё один.
Вместо объекта создаётся фабрика объектов, при каждом вызове которой инициализируется новый объект.
Помогает в работе над шаблонами. В частности, препятствует кешированию и способствует перечитыванию файла с шаблоном на каждом вызове данного шаблона в коде
| Параметр | Тип | Описание |
|---|---|---|
file_name | str | Имя файла шаблона. Может быть указано без расширения, тогда поиск производится последовательным добавлением расширений tpl, html, thtml, stpl |
**static_params | Любое число именованных параметров | Данные параметры передаются при любом формировании страницы из шаблона в функцию SimpleTemplate.render(), вне зависимости от того, какие параметры переданы или не переданы в момент формирования. Параметры, переданные в момент формирования страницы, естественно имеют приоритет |
Автор мыслил использование данного класса в модуле приложения, где формируются объекты шаблона. При этом порядок данного применения должен быть примерно следующим
set_root() и add_root() (если требуется)