Flask模板扩展因某些原因无效。
__init__.py
为空
app.py
的代码是:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template("index.html")
if (__name__ == "__main__"):
app.run()
index.html
的代码是:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>from index</h1>
{% block ext %}
{% endblock %}
</body>
</html>
ext.html
的代码是:
{% extends "index.html" %}
{% block ext %}
<h2>from ext</h2>
{% endblock %}
当我在命令行python app.py
中运行时,它没有给出错误或警告,日志只是
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [27/Sep/2017 14:48:40] "GET / HTTP/1.1" 200 -
但是在浏览器中,我唯一的输出是“来自索引”。所以Flask没有看到ext.html的模板扩展,我在浏览器中看不到“来自ext”。这有什么不对?某处有错字吗?
答案 0 :(得分:2)
你犯了错误的东西。继承从孩子到父母;如果您想要使用子模板,那么您需要调用它。
def index():
return render_template("ext.html")