使用环境同上篇django文章。

运行django服务:

]# cd py3/django-test1/test4]# python manage.py runserver 192.168.255.70:8000

创建html模板文件:

]# cd py3/django-test1/test4/templates/bookshop/]# vim base.html    Title    {% block head %}{% endblock %}

logo


{% block content1 %}    

父模板--继承

{% endblock %}

contact

base.html为模板基础,让index2.html继承base.html:

]# vim index2.html{% extends 'bookshop/base.html' %}

编辑视图函数:

]# cd /root/py3/django-test1/test4]# vim bookshop/views.pyfrom django.shortcuts import renderfrom .models import *...def index2(request):    return render(request,'bookshop/index2.html')

添加应用url路由:

]# vim bookshop/urls.py from django.conf.urls import urlfrom .  import viewsurlpatterns = [    ...    url(r'^index2$',views.index2, name='index2'),]

浏览器访问:

QQ截图20181208011548.png

以上就是基本实现模板继承的示例演示。

再修改index2.html:

]# vim templates/bookshop/index2.html{% extends 'bookshop/base.html' %}{% block content1 %}

this is a index2.html page!

{% endblock content1 %}

说明:

block content1与父模板重名,则会覆盖继承的模板。

在结束标签中{% endblock content1%}可以添加名称。

访问浏览器:

QQ截图20181208012156.png