Django模板的继承与模板的导入
目录
- 一:模版的继承
-
- 1.什么是模板继承?
- 2.使用继承流程原理
- 3.模板继承语法
-
- 二:模板的继承使用
-
- 1.案例需求
- 2.总结模板继承
-
- 三:模版的导入
-
- 1.模板导入
- 2.模板导入格式
- 3.模板导入使用
- 4.使用结果
-
一:模版的继承 1.什么是模板继承?
你需要事先在你想要使用的主页面上划定区域做好标记,之后在子页面继承的时候你就可以使用在主页面划定的区域,也就意味着,如果你不划定任何区域,那么你子页面将无法修改主页面内容
2.使用继承流程原理
- 1.先在你想要继承的主页面上通过bolck划定你将来可能要改的区域,并做好标记
- 2.在子页面上继承extends,利用block自动提示选取你想要修改的内容区域标记名称
- 3.在子页面extends中写你要修改主页面标记区的代码
- 4.然后就可以让子页面的修改内容渲染到主页面的划定区域上
这些网站页面整体都大差不差 只是某一些局部在做变化
3.模板继承语法
1.继承
{% extends '模版页面名' %}2.局部修改
# 1.你需要先去模版页面中划定可以被修改的区域
{% block '名字' %}
模版内容(666)
{% endblock %}
# 2.子页面中即成了模版页面之后 就可以根据名字修改
{% block '名字' %}
子版内容子版页面吃了可以自己写自己的之外 还可以继续使用模版的内容
{{ block.super }}666
{{ block.super }}666
{{ block.super }}666
{{ block.super }}666
{% endblock %}
4.一般情况下模版页面上应该至少有三块可以被修改的区域
1.css区域
2.html区域
3.js区域每一个子页面就都可以有自己独有的css代码 html代码 js代码
互相之间 互不干扰
# 子页面css
{% block css %}{% endblock %}{% block content %}{% endblock %}# 子页面js
{% block js %}{% endblock %}
二:模板的继承使用 1.案例需求
- 1.实现用户点击登录右侧局部出现登录页面,点击注册右侧出现注册页面
- urls.py
# 模板的继承
url(r'^home/', views.home),
# 创建login路由
url(r'^login/', views.login),
# 创建reg路由
url(r'^reg/', views.reg),
- views.py
def home(request):
return render(request, 'home.html')def login(request):
return render(request, 'login.html')def reg(request):
return render(request, 'reg.html')
- home.html
Title - 锐客网 {% block css %}{% endblock %}
{#导航条#}
{#左右不留白#}{#row 划分12份区域#}{#左侧分三份#}{#侧边栏#}首页登录
注册{#面板#}Panel title
{#划分区域 不影响区域展示,仅仅是标记区域名#}
{% block content %}
{#巨幕#}Hello, world!...
Learn more
{% endblock %}{% block js %}{% endblock %}
- login.html
{#login 页面全部清空#}{#login继承home主页面#}
{% extends 'home.html' %}{#子页面的css代码 #}
{% block css %}h1 {
color: red;
}{% endblock %}{#block 指定选择主页面划分的(区域) 可以进行修改 #}
{% block content %}
登录页面
{% endblock %}{# 子页面的js代码 #}
{% block js %}{% endblock %}
- reg.html
{#reg页面全部清空#}{#reg继承home主页面#}
{% extends 'home.html' %}{#子页面的css代码 #}
{% block css %}h1 {
color: seagreen;
}{% endblock %}{#block 指定选择主页面划分的(区域) 可以进行修改 #}
{% block content %}
注册页面
{% endblock %}{# 子页面的js代码 #}
{% block js %}{% endblock %}
文章图片
2.总结模板继承
一般情况下 模版的页面上划定的区域越多 那么该模版的扩展性就越高
但是如果太多 那还不如自己直接写
三:模版的导入 1.模板导入
将页面的某一个局部当成模块的形式
哪个地方需要就可以直接导入使用即可
2.模板导入格式
{% include '导入html文件名' %}
3.模板导入使用
- sss.html
我是sss.html页面
- login.html子页面
{% endblock %}{#block 指定选择主页面划分的(区域) 可以进行修改 #}
{% block content %}
登录页面
模板的导入
{% include 'sss.html' %}{% endblock %}
4.使用结果 【Django模板的继承与模板的导入】
文章图片
推荐阅读
- C/C++|c++学习笔记(六、模板和类型转换)
- 微软|开源布道,一场艰难的修行 —— 适兕与开源之道
- python|编程开源_开源社区在编程中的方式和方式
- 开源访谈录|“关起门来搞开源,做不了开源世界的Leader”
- 【定位不准的烦心事系列】第2篇(卫星信号弱到底是咋回事)
- 5年工作经验的Android工程师面试经验总结,阿里+腾讯+字节跳动面试真题汇总
- 稳定性与高可用保障的工作思路
- JAVA人生|都是科班出身的,学弟月薪却是我的3倍。
- Gopher必读(HttpClient的两个坑位)
- java|28 岁的我裸辞了,四年 Java 老鸟,只因薪水被应届生倒挂,在闭关三个月后拿到阿里 Offer