在 Flask 中使用块时遇到问题

Having problems with the usage of a block in Flask

所以我尝试建立一个(小型)网站(用于学习目的)并且在使用块时遇到了一些问题。 我觉得问题很明显,但我无法弄清楚。 这是我的代码:

# main.py
from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def home():
    return render_template("main.html")

if __name__ == "__main__":
    app.run(debug=True)
# main.html
<!DOCTYPE html>
<head>
    <title>
        {% block title %}{% endblock %}
    </title>
</head>
<body>
    {% block content %}{% endblock %}
</body>
</html>
# mainexdended.html
{% extends "main.html" %}
{% block title %}Test{% endblock %}

{% block content %} 
<h1> Content Test </h1>
{% endblock %}

现在,当我 运行 代码时,我只得到一个空白页面。 mainextended.html 中定义的所有内容都将被忽略。 我该如何更改?

那是因为您正在渲染 main.html,而不是 mainextended.html。

你需要改变

@app.route("/")
def home():
    return render_template("mainextended.html")

你应该看到 main.html 和 mainextended.html

两者的内容

如果您使用“扩展”,您总是希望呈现“扩展”html,还有一个包含内容的功能,反之亦然。