很遺憾,jinja2不能使用多繼承
如何進行多層繼承?
比如base.html爲母模板
blogBase.html爲blog模塊的模板,並以base.html爲模板
blogBase1.html爲以blogBase.html爲模板的HTML文件
即base.html->blogBase.html->blogBase1.html
一句話:使用super()函數
不多說了,上代碼
以title爲例:
base.html:
<title>{% block title %}{% endblock %}-tigerLee的blog</title>
blogBase.html:
{% block title %}我的博客{% endblock %}
blogBase1.html:
{% block title %}{{ super() }}{% endblock %}
此時頁面的title顯示爲:我的博客-tigerLee的blog
如果你裏面什麼也沒有,即:
{% block title %}{% endblock %}
則會顯示
-tigerLee的blog
(變紅是Markdown的標記問題,不用管它)
如果你
blogBase1.html:
{% block title %}{{ super() }}haha{% endblock %}
則會顯示:我的博客haha-tigerLee的blog
這下明白了吧,祝大家學習開心!