Django框架下静态模板的继承操作示例


Posted in Python onNovember 08, 2019

本文实例讲述了Django框架下静态模板的继承操作。分享给大家供大家参考,具体如下:

前言:第一篇博客,毕业校招在即,抽空把做过的项目都整理一下。

开发环境:python3.4,django1.8

初入python和django做项目,遇到很多前端页面代码冗余的情况,特别是头部和脚部,代码都是一样的。最开始是代码一直复制粘贴,后来发现Django自带的模板继承很好用。本人新手,仅发表个人经验,确实觉得很受用。欢迎大家指导。

①. 定义一个基础模板,该框架之后由子模板继承。

命名为base.html,这个页面主要放公用部分的代码,各个子页面都可以继承这个页面的样式。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>{% block title %}首页{% endblock %}</title>
  {% block js %} {% endblock %}
  {% block css %} {% endblock %}
</head>
<body> 
  {% block content %}{% endblock %}
</body>
</html>

②. 编写各个子模板。

如下所示,{% extends ‘base.html' %}作为基础模板,必须放在第一行才可以识别。

{% block %}这个标签,告诉模板引擎,子模板可以重载这些
{% include %}允许模板中包含其他模板。

注意css和js等静态文件,是和html不同的识别方式。

{% extends 'base.html' %}
<!-- 该页面不允许出现js以及css代码,content代码可直接写在本文件中,下面只是content的实例代码 -->
{% block title %}
  <!-- 此处写页面标题 -->
{% endblock %}
{% block js %}
  <!-- 此处填充js链接 -->
  <script type="text/javascript" src="..."></script>
{% endblock %}
{% block css %}
  <!-- 此处填充css链接 -->
{% endblock %}
{% block content %}
  <!-- 此处填充页面主体内容 -->
  {% include 'taskApp/cjjdglContent.html' %}
{% endblock %}

这种方式用起来,不仅改起来便捷,代码量也显然减少了不少。

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

Python 相关文章推荐
使用Python实现下载网易云音乐的高清MV
Mar 16 Python
python实现基于两张图片生成圆角图标效果的方法
Mar 26 Python
python机器学习理论与实战(四)逻辑回归
Jan 19 Python
Python中将dataframe转换为字典的实例
Apr 13 Python
Python3实现的爬虫爬取数据并存入mysql数据库操作示例
Jun 06 Python
python实现两个经纬度点之间的距离和方位角的方法
Jul 05 Python
python学生信息管理系统实现代码
Dec 17 Python
Python Scrapy框架第一个入门程序示例
Feb 05 Python
Python3变量与基本数据类型用法实例分析
Feb 14 Python
django使用F方法更新一个对象多个对象字段的实现
Mar 28 Python
Python常驻任务实现接收外界参数代码解析
Jul 21 Python
Django搭建项目实战与避坑细节详解
Dec 06 Python
python中自带的三个装饰器的实现
Nov 08 #Python
python反转列表的三种方式解析
Nov 08 #Python
flask框架自定义过滤器示例【markdown文件读取和展示功能】
Nov 08 #Python
Python通过递归获取目录下指定文件代码实例
Nov 07 #Python
Django REST framework 单元测试实例解析
Nov 07 #Python
浅谈python中统计计数的几种方法和Counter详解
Nov 07 #Python
Python操作SQLite/MySQL/LMDB数据库的方法
Nov 07 #Python
You might like
PHP与SQL注入攻击[三]
2007/04/17 PHP
台湾中原大学php教程孙仲岳主讲
2008/01/07 PHP
php实现的CSS更新类实例
2014/09/22 PHP
Laravel模板引擎Blade中section的一些标签的区别介绍
2015/02/10 PHP
PHP中使用BigMap实例
2015/03/30 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
2015/07/06 PHP
PHP查询大量数据内存耗尽问题的解决方法
2016/10/28 PHP
PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例
2018/05/23 PHP
php伪静态验证码不显示的解决方案
2019/09/26 PHP
学习ExtJS Panel常用方法
2009/10/07 Javascript
jquery选择器大全 全面详解jquery选择器
2014/03/06 Javascript
IE6已终止操作问题的2种情况及解决
2014/04/23 Javascript
jQuery结合HTML5制作的爱心树表白动画
2015/02/01 Javascript
使用jQuery实现图片遮罩半透明坠落遮挡
2015/03/16 Javascript
jquery实现手机号码选号的方法
2015/07/31 Javascript
Validform+layer实现漂亮的表单验证特效
2016/01/17 Javascript
AngularJS ng-app 指令实例详解
2016/07/30 Javascript
jquery属性,遍历,HTML操作方法详解
2016/09/17 Javascript
jquery+ajax实现省市区三级联动效果简单示例
2017/01/04 Javascript
Vue.js父与子组件之间传参示例
2017/02/28 Javascript
微信小程序动态显示项目倒计时效果
2017/06/13 Javascript
AngularJS实现的获取焦点及失去焦点时的表单验证功能示例
2017/10/25 Javascript
[02:23]2018DOTA2亚洲邀请赛趣味视频——反应测试
2018/04/04 DOTA
[01:16:50]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第一场 3月7日
2021/03/11 DOTA
Python使用matplotlib填充图形指定区域代码示例
2018/01/16 Python
Python多继承原理与用法示例
2018/08/23 Python
python将字符串转换成json的方法小结
2019/07/09 Python
python实现的分层随机抽样案例
2020/02/25 Python
Python reduce函数作用及实例解析
2020/05/08 Python
HTML5的video标签的浏览器兼容性增强方案分享
2016/05/19 HTML / CSS
美国殿堂级滑板、冲浪、滑雪服装品牌:Volcom(钻石)
2017/04/20 全球购物
个人自我鉴定怎么写
2013/10/28 职场文书
2015年办公室个人工作总结
2015/04/20 职场文书
工程移交协议书
2016/03/24 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js
SQL Server携程核心系统无感迁移到MySQL实战
2022/06/01 SQL Server