diff --git a/schilder2000/helpers.py b/schilder2000/helpers.py index f6c4e1e3a2ce8ffcfe1c8050e8c5289fe0f32c29..cba4a604996adb5c60cb2a627fe3fc6ed5c896eb 100644 --- a/schilder2000/helpers.py +++ b/schilder2000/helpers.py @@ -6,10 +6,8 @@ from jinja2 import BaseLoader, ChoiceLoader, PrefixLoader, Template class Blueprint(FlaskBlueprint): - def render_template( - self, - template: str | Template | list[str | Template], - **context: t.Any, + def real_template_name( + self, template: str | Template | list[str | Template] ) -> str: if self.jinja_loader is not None: # XXX This currently assumes ":" as PrefixLoader.delimiter in the app @@ -19,6 +17,14 @@ class Blueprint(FlaskBlueprint): for i, tpl in enumerate(template): if isinstance(t, str) and ":" not in tpl: template[i] = self.name + ":" + tpl + return template + + def render_template( + self, + template: str | Template | list[str | Template], + **context: t.Any, + ) -> str: + template = self.real_template_name(template) return render_template(template, **context)