Django_模板继承

模板继承先创建一个父模版,它包含大部页面共有元素,并且需要定义能够被子模板覆盖的blocks标签。

extends 模板继承

通过下面的例子,理解模板继承的概念。

创建base.html文件,写入下面代码:




    {% block title %}基础模板{% endblock %}



    
所有页面公用部分
{% block block_name1 %}
部分页面公用部分1
{% endblock %} {% block block_name2 %}
部分页面公用部分2
{% endblock %} {% block block_name3 %} {% endblock %}

在子模板中直接继承bse.html模板。

创建demo.html文件,写入下面代码:


{% extends "base.html" %}

写个视图函数调用上面的demo.html模板,然后访问该页面

Django_模板继承_第1张图片

可以看到子模板显示了父模板所有内容。

重写block 

修改demo.html文件内容如下:


{% extends "base.html" %}


{% block title%} Demo {% endblock %}


{% block block_name1 %} 重写部分页面公用部分1 {% endblock %}


{% block block_name2 %}{% endblock %}


{% block block_name3 %}
    
hello python!
你好,python!
{% endblock %}

访问demo.html模板,显示的内容如下:

Django_模板继承_第2张图片

子模板也可被继承重写

修改demo.html文件内容如下:


{% extends "base.html" %}


{% block title%} Demo {% endblock %}


{% block block_name1 %} 重写部分页面公用部分1 {% endblock %}


{% block block_name2 %}{% endblock %}


{% block block_name3 %}
    
hello python!
你好,python!
{% block block_name4 %} {% endblock %} {% endblock %}

新增demo1.html文件内容如下:


{% extends "demo.html" %}

{% block title%} Demo1 {% endblock %}

{% block block_name4 %}
继承子模板
{% endblock %}

访问demo1.html,显示的内容如下:

Django_模板继承_第3张图片


源码等资料获取方法

Django_模板继承_第4张图片

 各位想获取源码的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

 

你可能感兴趣的:(Django,django,数据库,python,测试开发,程序员,后端,软件测试工程师)