httk.serve.web.templating¶
Provide template engine contracts and built-in implementations.
Submodules¶
Classes¶
Define the page and fragment template-engine protocol. |
|
Carry page content and context into a template engine. |
|
Legacy-oriented template resolution for old httkweb projects. |
|
Resolve and render Jinja templates from a site directory. |
Package Contents¶
- class httk.serve.web.templating.TemplateEngine[source]¶
Bases:
ProtocolDefine the page and fragment template-engine protocol.
- class httk.serve.web.templating.TemplateRenderInput[source]¶
Carry page content and context into a template engine.
- Parameters:
content_html – Rendered page HTML supplied to the template.
template_name – Optional content template name.
base_template_name – Optional base template name.
context – Values exposed to templates.
- class httk.serve.web.templating.HttkCompatTemplateEngine(template_dir)[source]¶
Bases:
httk.serve.web.templating.jinja2_engine.JinjaTemplateEngineLegacy-oriented template resolution for old httkweb projects.
The compatibility engine keeps Jinja rendering but prioritizes legacy template suffixes so old .httkweb.html files resolve first.
- Parameters:
template_dir (pathlib.Path) – Directory containing site templates.
- render(render_input)[source]¶
Render page content using legacy-compatible template resolution.
- Parameters:
render_input (httk.serve.web.templating.base.TemplateRenderInput) – Content, template names, and template context.
- Returns:
Rendered HTML.
- Return type:
- class httk.serve.web.templating.JinjaTemplateEngine(template_dir, *, template_suffixes=TEMPLATE_SUFFIXES)[source]¶
Resolve and render Jinja templates from a site directory.
- Parameters:
template_dir (pathlib.Path) – Directory containing site templates.
template_suffixes (tuple[str, Ellipsis]) – Suffixes probed for bare template names.
- template_dir¶
- template_suffixes = ('.html.j2', '.jinja', '.j2', '.html', '.httkweb.html')¶
- render(render_input)[source]¶
Render page content through optional content and base templates.
- Parameters:
render_input (httk.serve.web.templating.base.TemplateRenderInput) – Content, template names, and template context.
- Returns:
Rendered HTML.
- Return type: