Flask中的模板可以继承,通过继承可以把模板中许多重复出现的元素抽取出来,放在父模板中,并且父模板通过定义block给子模板开一个口,子模板根据需要,再实现这个block
实例首先创建一个base.html把导航栏和尾部写进去,当作一个基础模板,其他几个页面都继承这个基础模板的内容,这样省了在每一个页面中都写相同的内容,直接继承就可以了,也方便维护。
文件目录结构如下:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def hello_world():
return render_template('index.html')
@app.route('https://blog.csdn.net/control')
def control():
return render_template('control.html')
@app.route('https://blog.csdn.net/about')
def about():
return render_template('about.html')
if __name__ == '__main__':
app.run(debug=True)
base.html
{% block title %}{% endblock %}
{% block body %}{% endblock %}
index.html
{% extends "base.html" %}
{% block title %}
首页
{% endblock %}
{% block body %}
我是首页
{% endblock %}
about.html
{% extends "base.html" %}
{% block title %}
控制
{% endblock %}
{% block body %}
我是关于我们页
{% endblock %}
control.html
{% extends "base.html" %}
{% block title %}
控制
{% endblock %}
{% block body %}
我是控制页
{% endblock %}



