首页 > 解决方案 > Flask 模板继承

问题描述

在“模板”文件夹中,我有“index.html”文件和“list.html”文件:

“list.html”:

{% extends "index.html" %}
{% block list %}
<div>
  <h1>list</h1>
</div>
{% endblock %}

“index.html”(正文):

<body>
  {% block list%}{% endblock %}
</body>

“应用程序.py”:

@app.route("/")
def index():
    return render_template('index.html')

问题是只有 index.html 的静态部分在浏览器中呈现。没有带有“列表”的 h1 标签。

怎么了?

标签: pythontemplatesflaskjinja2

解决方案


在 Flask 的上下文中扩展意味着您使用“index.html”作为“list.html”的模板,但这不会改变“index.html”。如果你想看到你的<h1>标签,你必须渲染“list.html”。


推荐阅读