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 相关文章推荐
Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法
May 22 Python
简介二分查找算法与相关的Python实现示例
Aug 26 Python
浅谈python对象数据的读写权限
Sep 12 Python
Python中矩阵库Numpy基本操作详解
Nov 21 Python
50行Python代码实现人脸检测功能
Jan 23 Python
Python过滤txt文件内重复内容的方法
Oct 21 Python
使用python实现ftp的文件读写方法
Jul 02 Python
Python寻找路径和查找文件路径的示例
Jul 10 Python
使用 Python 写一个简易的抽奖程序
Dec 08 Python
使用Python三角函数公式计算三角形的夹角案例
Apr 15 Python
PyCharm+PyQt5+QtDesigner配置详解
Aug 12 Python
python爬虫利用代理池更换IP的方法步骤
Feb 21 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
使用bcompiler对PHP文件进行加密的代码
2010/08/29 PHP
PHP系统命令函数使用分析
2013/07/05 PHP
php实现的zip文件内容比较类
2014/09/24 PHP
php动态添加url查询参数的方法
2015/04/14 PHP
Yii2表单事件之Ajax提交实现方法
2017/05/04 PHP
jQuery技巧总结
2011/01/01 Javascript
利用JQuery动画制作滑动菜单项效果实现步骤及代码
2013/02/07 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
原生JS和JQuery动态添加、删除表格行的方法
2015/05/28 Javascript
基于insertBefore制作简单的循环插空效果
2015/09/21 Javascript
利用JS提交表单的几种方法和验证(必看篇)
2016/09/17 Javascript
详解Jquery 遍历数组之$().each方法与$.each()方法介绍
2017/01/09 Javascript
js实现弹窗暗层效果
2017/01/16 Javascript
微信小程序模板之分页滑动栏
2017/02/10 Javascript
详解用Node.js写一个简单的命令行工具
2018/03/01 Javascript
VUE 配置vue-devtools调试工具及安装方法
2018/09/30 Javascript
代码实例ajax实现点击加载更多数据图片
2018/10/12 Javascript
jquery获取img的src值实例介绍
2019/01/16 jQuery
vue路由插件之vue-route
2019/06/13 Javascript
基于vue.js实现购物车
2020/01/15 Javascript
JavaScript内置对象之Array的使用小结
2020/05/12 Javascript
python字典get()方法用法分析
2015/04/17 Python
python 移除字符串尾部的数字方法
2018/07/17 Python
python multiprocessing模块用法及原理介绍
2019/08/20 Python
对Python中一维向量和一维向量转置相乘的方法详解
2019/08/26 Python
Pycharm及python安装详细步骤及PyCharm配置整理(推荐)
2020/07/31 Python
如何使用 Flask 做一个评论系统
2020/11/27 Python
CSS3区域模块region相关编写示例
2015/08/28 HTML / CSS
Deux par Deux官方网站:设计师童装
2020/01/03 全球购物
Aosom西班牙:家具在线商店
2020/06/11 全球购物
CLR与IL分别是什么含义
2016/08/23 面试题
机械制造与自动化应届生求职信
2013/11/16 职场文书
退学证明范本3篇
2014/10/29 职场文书
大学生党员个人总结
2015/02/13 职场文书
结婚仪式主持词
2015/06/29 职场文书
Python基础详解之描述符
2021/04/28 Python