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实现通过pil模块对图片格式进行转换的方法
Mar 24 Python
Python编写百度贴吧的简单爬虫
Apr 02 Python
Python Sql数据库增删改查操作简单封装
Apr 18 Python
python if not in 多条件判断代码
Sep 21 Python
python select.select模块通信全过程解析
Sep 20 Python
Python算法之图的遍历
Nov 16 Python
python基础知识(一)变量与简单数据类型详解
Apr 17 Python
python 梯度法求解函数极值的实例
Jul 10 Python
Python实现随机取一个矩阵数组的某几行
Nov 26 Python
python实现布隆过滤器及原理解析
Dec 08 Python
Python实战之实现康威生命游戏
Apr 26 Python
Python一行代码实现自动发邮件功能
May 30 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
使用MaxMind 根据IP地址对访问者定位
2006/10/09 PHP
php实现替换手机号中间数字为*号及隐藏IP最后几位的方法
2016/11/16 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
2020/02/16 PHP
GWT中复制到剪贴板 js+flash实现复制 兼容性比较好
2010/03/07 Javascript
Tab切换组件(选项卡功能)实例代码
2013/11/21 Javascript
jquery使用淘宝接口跨域查询手机号码归属地实例
2013/11/28 Javascript
javascript为按钮注册回车事件(设置默认按钮)的方法
2015/05/09 Javascript
详解AngularJS中的表达式使用
2015/06/16 Javascript
JS继承之借用构造函数继承和组合继承
2016/09/07 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
利用Node.js+Koa框架实现前后端交互的方法
2017/02/27 Javascript
js中删除数组中的某一元素实例(无下标时)
2017/02/28 Javascript
jQuery实现分页功能(含ajax请求、后台数据、附完整demo)
2017/04/03 jQuery
jQuery实现鼠标响应式透明度渐变动画效果示例
2018/02/13 jQuery
JavaScript 中的12种循环遍历方法【总结】
2018/05/31 Javascript
浅谈node中的cluster集群
2018/06/02 Javascript
微信小程序自定义tab实现多层tab嵌套功能
2018/06/15 Javascript
Vue中多个元素、组件的过渡及列表过渡的方法示例
2019/02/13 Javascript
15 分钟掌握vue-next响应式原理
2019/10/13 Javascript
JS前后端实现身份证号验证代码解析
2020/07/23 Javascript
Apache如何部署django项目
2017/05/21 Python
Python使用正则表达式获取网页中所需要的信息
2018/01/29 Python
pandas按若干个列的组合条件筛选数据的方法
2018/04/11 Python
Windows下pycharm创建Django 项目(虚拟环境)过程解析
2019/09/16 Python
Pytorch实现LSTM和GRU示例
2020/01/14 Python
Python实现AI换脸功能
2020/04/10 Python
使用python实现名片管理系统
2020/06/18 Python
浅谈pytorch中的BN层的注意事项
2020/06/23 Python
使用python库xlsxwriter库来输出各种xlsx文件的示例
2020/09/01 Python
filter使用python3代码进行迭代元素的实例详解
2020/12/03 Python
John Varvatos官方网站:设计师男士时装
2017/02/08 全球购物
信访工作者先进事迹
2014/01/17 职场文书
婚庆答谢词
2015/01/04 职场文书
离婚起诉书范本
2015/05/18 职场文书
温馨祝福晨语:美丽的一天从我的问候开始
2019/11/28 职场文书
在MySQL中你成功的避开了所有索引
2022/04/20 MySQL