Пакет на http://svn.repoze.org/repoze.bfg.jinja2/trunk/repoze/bfg/jinja2/ предоставляет дополнительные привязки Jinja2 для BFG. По сути, вы создаете такой пакет, а затем разрешаете людям подключать его к своим системам.
Существует два уровня интеграции. Первая - это просто интеграция на уровне импорта, которая позволит людям делать что-то вроде:
из my.template.system import render_template_to_response
def aview (запрос):
return render_template_to_response ('some /lative / path.myt')
Подстановка методов render_template * в repoze.bfg.jina2, замена их аналогами для вашей любимой системы шаблонов даст вам это.
Другой уровень интеграции - позволить вашей системе шаблонов использоваться в качестве «рендерера». Это разрешает, например:
@ bfg_view (визуализатор = "некоторые / родственник / path.myt")
def aview (запрос):
return {'a': 1}
Для этого выполните функцию «renderer_factory» в repoze.bfg.jinja2, а затем попросите людей добавить этот рендерер в свою конфигурацию через «config.add_renderer (renderer_factory, '.myt')» (обязательно) или с помощью включая файл ZCML, который вы отправляете вместе с пакетом, в свой ZCML.