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 相关文章推荐
wxPython中文教程入门实例
Jun 09 Python
Python实现快速排序算法及去重的快速排序的简单示例
Jun 26 Python
python3.5 + PyQt5 +Eric6 实现的一个计算器代码
Mar 11 Python
EM算法的python实现的方法步骤
Jan 02 Python
python实现log日志的示例代码
Apr 28 Python
uwsgi+nginx部署Django项目操作示例
Dec 04 Python
利用Python+阿里云实现DDNS动态域名解析的方法
Apr 01 Python
python使用 request 发送表单数据操作示例
Sep 25 Python
python 实现绘制整齐的表格
Nov 18 Python
python实现高斯(Gauss)迭代法的例子
Nov 20 Python
解决Keras 中加入lambda层无法正常载入模型问题
Jun 16 Python
numpy实现RNN原理实现
Mar 02 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中使用url传递数组的方法
2015/02/11 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
php连接mysql之mysql_connect()与mysqli_connect()的区别
2020/07/19 PHP
javascript 用原型继承来实现对象系统
2010/03/22 Javascript
js 有框架页面跳转(target)三种情况下的应用
2013/04/09 Javascript
seaJs的模块定义和模块加载浅析
2014/06/06 Javascript
浅谈javascript中replace()方法
2015/11/10 Javascript
Bootstrap开关(switch)控件学习笔记分享
2016/05/30 Javascript
JS表单验证方法实例小结【电话、身份证号、Email、中文、特殊字符、身份证号等】
2017/02/14 Javascript
深入探究node之Transform
2017/07/20 Javascript
mui 打开新窗口的方式总结及注意事项
2017/08/20 Javascript
JS+HTML5实现获取手机验证码倒计时按钮
2018/08/08 Javascript
微信小程序--特定区域滚动到顶部时固定的方法
2019/04/28 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
2019/07/13 Javascript
webpack5 联邦模块介绍详解
2020/07/08 Javascript
跟老齐学Python之变量和参数
2014/10/10 Python
Python实现控制台中的进度条功能代码
2017/12/22 Python
Python 实现王者荣耀中的敏感词过滤示例
2019/01/21 Python
Django关于admin的使用技巧和知识点
2020/02/10 Python
解决python -m pip install --upgrade pip 升级不成功问题
2020/03/05 Python
python网络编程:socketserver的基本使用方法实例分析
2020/04/09 Python
DC Shoes荷兰官方网站:美国极限运动品牌
2019/10/22 全球购物
澳洲最大的时尚奢侈品电商平台:Cettire
2020/06/15 全球购物
医学生自荐信范文
2013/12/03 职场文书
个人素质的自我评价分享
2013/12/16 职场文书
制作部班长职位说明书
2014/02/26 职场文书
合作协议书
2014/04/23 职场文书
关于孝道的演讲稿
2014/05/21 职场文书
2014副镇长民主生活会个人对照检查材料思想汇报
2014/09/30 职场文书
作风建设年度心得体会
2014/10/29 职场文书
导游欢送词
2015/01/31 职场文书
考生诚信考试承诺书
2015/04/29 职场文书
小学教师师德培训心得体会
2016/01/09 职场文书
Python - 10行代码集2000张美女图
2021/05/23 Python
Redis+Lua脚本实现计数器接口防刷功能(升级版)
2022/02/12 Redis
KVM基础命令详解
2022/04/30 Servers