假设这是我的代码:
from jinja2 import Environment, PackageLoader
def render(path, **kwargs):
env = Environment()
env.loader = PackageLoader('lemma.app.views', '')
template = env.get_template(path)
return str(template.render(**kwargs))
这是我的模板:
{% extends "layouts/application.html" %}
{% block content %}
bla
{% endblock %}
有没有办法在我的代码中设置布局,而不是在我的模板中,或者我应该像白痴一样在每个模板中编写 {% extends "layouts/application.html"%}?
请您参考如下方法:
您可以在子模板的扩展中使用变量:{% extends layout %}。 这使得更改基本/布局模板变得容易,并且可以选择另一个基本/布局模板。我使用扩展变量是因为对于同一个 child 的不同布局模板。子模板是网页的一部分或 fancybox iframe 的一部分。
