18 lines
477 B
Python
18 lines
477 B
Python
from __future__ import annotations
|
|
from pathlib import Path
|
|
from jinja2 import Environment, FileSystemLoader
|
|
|
|
|
|
def render_from_dir(doc_dir: Path, template_filename: str, data: dict) -> str:
|
|
"""
|
|
Render template located inside a document folder.
|
|
"""
|
|
|
|
env = Environment(
|
|
loader=FileSystemLoader(str(doc_dir)),
|
|
trim_blocks=True,
|
|
lstrip_blocks=True,
|
|
)
|
|
template = env.get_template(template_filename)
|
|
return template.render(**data)
|