mako#

class litestar.contrib.mako.MakoTemplate#

Bases: TemplateProtocol

Mako template, implementing TemplateProtocol

__init__(template: Template, template_callables: list[tuple[str, Callable[Concatenate[ContextType, P], R]]]) None#

Initialize a template.

Parameters:
  • template – Base MakoTemplate used by the underlying mako-engine

  • template_callables – List of callables passed to the template

render(*args: Any, **kwargs: Any) str#

Render a template.

Parameters:
  • args – Positional arguments passed to the engines render function

  • kwargs – Keyword arguments passed to the engines render function

Returns:

Rendered template as a string

class litestar.contrib.mako.MakoTemplateEngine#

Bases: TemplateEngineProtocol[MakoTemplate, Mapping[str, Any]]

Mako-based TemplateEngine.

__init__(directory: Path | list[Path] | None = None, engine_instance: Any | None = None) None#

Initialize template engine.

Parameters:
  • directory – Direct path or list of directory paths from which to serve templates.

  • engine_instance – A mako TemplateLookup instance.

get_template(template_name: str) MakoTemplate#

Retrieve a template by matching its name (dotted path) with files in the directory or directories provided.

Parameters:

template_name – A dotted path

Returns:

MakoTemplate instance

Raises:

TemplateNotFoundException – if no template is found.

register_template_callable(key: str, template_callable: Callable[[Concatenate[Mapping[str, Any], P]], T]) None#

Register a callable on the template engine.

Parameters:
  • key – The callable key, i.e. the value to use inside the template to call the callable.

  • template_callable – A callable to register.

Returns:

None

render_string(template_string: str, context: Mapping[str, Any]) str#

Render a template from a string with the given context.

Parameters:
  • template_string – The template string to render.

  • context – A dictionary of variables to pass to the template.

Returns:

The rendered template as a string.

classmethod from_template_lookup(template_lookup: TemplateLookup) MakoTemplateEngine#

Create a template engine from an existing mako TemplateLookup instance.

Parameters:

template_lookup – A mako TemplateLookup instance.

Returns:

MakoTemplateEngine instance