模板继承:和Python中类的继承是相似的,典型应用是网站开头或者网站结尾。
父模板:如果一段代码重复出现,为了效率,通常会把这段代码定义到模板中,这个模板就是父模板。父模板定义在templates目录下。
子模板:需要继承父模板格式的模板,定义在templates/应用目录下。
模板继承中使用block标签,格式:
{% block 名称 %}
预留区域,可以编写默认内容,也可以没有默认内容
{% endblock 名称 %}
为了更好的可读性,建议block和endblock写上相同名称。
父模板代码:base.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{% block top %}
<h1>这是网页头部</h1>
{% endblock top%}
{% block content1 %}
<div>这是个牛逼的网站</div>
{% endblock content1%}
{% block content2 %}
{# 预留区域 #}
{% endblock content2%}
{% block bottom %}
<h1>这是网页尾部</h1>
{% endblock bottom%}
</body>
</html>
子模板:jicheng.html
<!DOC