Содержание

Мотивация

При работе с SimpleTemplate появилось ощущение, что при создании приложений придётся часто повторно использовать различные шаблоны, а также иметь их как осязаемый объект в IDE. Поэтому было написано ЭТО.

Параметры модуля

TMPL_ROOT

Хранит кортеж каталогов, в которых будет произведён поиск файлов шаблонов и их компонентов.

Напрямую данный параметр лучше не менять, а использовать соответствующие методы класса SimpleTmplWrapper, описанные далее.

По умолчанию используется текущий каталог приложения.

Объект SimpleTmplWrapper

Методы

Конструктор

Параметр Тип Описание
file_name str Имя файла шаблона. Может быть указано без расширения, тогда поиск производится последовательным добавлением расширений tpl, html, thtml, stpl
**static_params Любое число именованных параметров Данные параметры передаются при любом формировании страницы из шаблона в функцию ``SimpleTemplate.render()``, вне зависимости от того, какие параметры переданы или не переданы в момент формирования. Параметры, переданные в момент формирования страницы, естественно имеют приоритет

Поиск файла шаблона и его компонентов производится в согласно списка каталогов данных в TMPL_ROOT

Вызов объекта ()

При вызове объекта, как метода, генерируется непосредственно страница.

Метод может принимать параметры шаблона в качестве именованных параметров данного метода, которые дополняют либо переопределяют параметры заданные в конструкторе объекта.

set_root()

Задаёт новую директорию для поиска шаблонов, при этом старый список удаляется.

В качестве параметров принимает либо новый каталог, задаваемый в переменную модуля TMPL_ROOT, либо компоненты, которые сводятся вместе с использованием метода os.path.join()

add_root()

Аналогичен методу set_root(), кроме того, что он не заменяет каталоги а добавляет в список ещё один.

Методы класса

init_devel_factory()

Вместо объекта создаётся фабрика объектов, при каждом вызове которой инициализируется новый объект.

Помогает в работе над шаблонами. В частности, препятствует кешированию и способствует перечитыванию файла с шаблоном на каждом вызове данного шаблона в коде

Параметр Тип Описание
file_name str Имя файла шаблона. Может быть указано без расширения, тогда поиск производится последовательным добавлением расширений tpl, html, thtml, stpl
**static_params Любое число именованных параметров Данные параметры передаются при любом формировании страницы из шаблона в функцию SimpleTemplate.render(), вне зависимости от того, какие параметры переданы или не переданы в момент формирования. Параметры, переданные в момент формирования страницы, естественно имеют приоритет

Предполагаемая последовательность использования инструмента

Автор мыслил использование данного класса в модуле приложения, где формируются объекты шаблона. При этом порядок данного применения должен быть примерно следующим

  1. Задаём каталог с шаблонами, используя методы set_root() и add_root() (если требуется)
  2. Формируем набор объектов страниц, вызывая конструктор на каждый созданных шаблон.
  3. Импортируем объекты страниц в те модули приложения, где они будут использоваться.