时间:2021-07-01 10:21:17 帮助过:53人阅读
假设,我们的网站主页面除了正文是由导航条,低栏,统计栏构成。也就是nav.html,bottom.html,tongji.html。
在构建页面的时候,可以写一个base.html来包含(include)这些通用文件,如下:
{% block title %}默认标题{% endblock %} {% include 'nav.html' %}{% block content %}这里是默认内容,所有继承自这个模板的,如果不覆盖就显示这里的默认内容。{% endblock %}{% include 'bottom.html' %}{% include 'tongji.html' %}
在这里,所有的include都是引入通用文件,而block都是定义默认模块,其他继承base.html的页面,都可以在自己的页面中重新定义这些模块,达到覆盖替换的作用。
比如我们设计一个主页面index.html,继承自base.html,同时替换base.html中的title和content两个模块。以下是index.html文件的内容:
{% extends 'base.html' %}{% block title %}欢迎光临首页{% endblock %}{% block content %}{% include 'ad.html' %}这里是首页,欢迎光临{% endblock %}
运行这个页面,你就会发现,原有的base.html中的模块被替换掉了。