Edit me on GitHub

pyramid_jinja2 API

pyramid_jinja2.includeme(config)

Set up standard configurator registrations. Use via:

config = Configurator()
config.include('pyramid_jinja2')

Once this function has been invoked, the .jinja2 renderer is available for use in Pyramid and these new directives are available as methods of the configurator:

  • add_jinja2_renderer: Add a new Jinja2 renderer, with a different file extension and/or settings.
  • add_jinja2_search_path: Add a new location to the search path for the specified renderer.
  • add_jinja2_extension: Add a list of extensions to the Jinja2 environment used by the specified renderer.
  • get_jinja2_environment: Return the jinja2.Environment used by the specified renderer.
pyramid_jinja2.add_jinja2_renderer(config, name, settings_prefix='jinja2.', package=None)

This function is added as a method of a Configurator, and should not be called directly. Instead it should be called like so after pyramid_jinja2 has been passed to config.include:

config.add_jinja2_renderer('.html', settings_prefix='jinja2.')

It will register a new renderer, loaded from settings at the specified settings_prefix prefix. This renderer will be active for files using the specified extension name.

pyramid_jinja2.add_jinja2_search_path(config, searchpath, name='.jinja2')

This function is added as a method of a Configurator, and should not be called directly. Instead it should be called like so after pyramid_jinja2 has been passed to config.include:

config.add_jinja2_search_path('anotherpackage:templates/')

It will add the directory or asset spec passed as searchpath to the current search path of the jinja2.Environment used by the renderer identified by name.

pyramid_jinja2.add_jinja2_extension(config, ext, name='.jinja2')

This function is added as a method of a Configurator, and should not be called directly. Instead it should be called like so after pyramid_jinja2 has been passed to config.include:

config.add_jinja2_extension(myext)

It will add the Jinja2 extension passed as ext to the current jinja2.Environment used by the renderer named name.

pyramid_jinja2.get_jinja2_environment(config, name='.jinja2')

This function is added as a method of a Configurator, and should not be called directly. Instead it should be called like so after pyramid_jinja2 has been passed to config.include:

config.get_jinja2_environment()

It will return the configured jinja2.Environment for the renderer named name. Configuration is delayed until a call to config.commit() or config.make_wsgi_app(). As such, if this method is called prior to committing the changes, it may return None.

class pyramid_jinja2.Jinja2TemplateRenderer(template_loader)

Renderer for a jinja2 template

class pyramid_jinja2.SmartAssetSpecLoader(searchpath=(), encoding='utf-8', debug=False)

A Jinja2 template loader that knows how to handle asset specifications.

Previous topic

pyramid_jinja2

Next topic

Changes