Python  Django 母版和继承解析


Posted in Python onAugust 09, 2019

可以把多个页面相同的部分提取出来,放在一个母板里,这些页面只需要继承这个母板就好了

通常会在母板中定义页面专用的 CSS 块和 JS 块,方便子页面替换

定义块:

{% block 名字 %}
{% endblock %}

views.py 中添加函数:

from django.shortcuts import render, redirect, HttpResponse
from app01 import models
import datetime
def muban_test(request):
  return render(request, "muban_test.html")

urls.py 中添加对应关系:

from django.conf.urls import url
from django.contrib import admin
from app01 import views
urlpatterns = [
  # 母板
  url(r'^muban_test/', views.muban_test),
]

muban.html:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<hr>
{# 定义母板 #}
{% block page-main %}
{% endblock %}
<hr>
</body>
</html>

muban_test.html:

{# 首先继承母板 #}
{% extends 'muban.html' %}
{# 这里的名字 page-main 和继承的母板的名字要相符 #}
{% block page-main %}
  <h1>hello world</h1>
{% endblock %}<br data-filtered="filtered"><br data-filtered="filtered"><h1>Test</h1>

运行结果:

Python  Django 母版和继承解析

可以看到,muban_test.html 中没有写 hr,但是显示了从 muban.html 继承过来的 hr

muban_test.html 中写的 test 也没有显示出来,因为它是把块中的内容贴到母板中块的部分

Python  Django 母版和继承解析

views.py 函数中 return 的是 muban_test.html,而不是 muban.html

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的引用和拷贝浅析
Nov 22 Python
Python标准库defaultdict模块使用示例
Apr 28 Python
python http接口自动化脚本详解
Jan 02 Python
tornado 多进程模式解析
Jan 15 Python
浅谈Python Opencv中gamma变换的使用详解
Apr 02 Python
替换python字典中的key值方法
Jul 06 Python
Python实现的多进程拷贝文件并显示百分比功能示例
Apr 09 Python
GitHub 热门:Python 算法大全,Star 超过 2 万
Apr 29 Python
python操作excel让工作自动化
Aug 09 Python
Python字符串处理的8招秘籍(小结)
Aug 13 Python
使用turtle绘制五角星、分形树
Oct 06 Python
Pytorch转onnx、torchscript方式
May 25 Python
python实现爬虫抓取小说功能示例【抓取金庸小说】
Aug 09 #Python
python实现BP神经网络回归预测模型
Aug 09 #Python
Django ORM 聚合查询和分组查询实现详解
Aug 09 #Python
解决Django后台ManyToManyField显示成Object的问题
Aug 09 #Python
详解Python中的正斜杠与反斜杠
Aug 09 #Python
图文详解Django使用Pycharm连接MySQL数据库
Aug 09 #Python
Django ORM多对多查询方法(自定义第三张表&amp;ManyToManyField)
Aug 09 #Python
You might like
php中实现简单的ACL 完结篇
2011/09/07 PHP
PHP连接MYSQL数据库实例代码
2016/01/20 PHP
php图片上传类 附调用方法
2016/05/15 PHP
PHP排序算法之冒泡排序(Bubble Sort)实现方法详解
2018/04/20 PHP
PHP利用百度ai实现文本和图片审核
2019/05/08 PHP
获取网站跟路径的javascript代码(站点及虚拟目录)
2009/10/20 Javascript
Javascript倒计时页面跳转实例小结
2013/09/11 Javascript
javascript控制Div层透明属性由浅变深由深变浅逐渐显示
2013/11/12 Javascript
使用js实现的简单拖拽效果
2015/03/18 Javascript
js正则匹配出所有图片及图片地址src的方法
2015/06/08 Javascript
jquery实现模拟百分比进度条渐变效果代码
2015/10/29 Javascript
基于jquery实现页面滚动时顶部导航显示隐藏
2020/04/20 Javascript
图文详解JavaScript的原型对象及原型链
2016/08/02 Javascript
jQuery中的100个技巧汇总
2016/12/15 Javascript
简单实现jQuery级联菜单
2017/01/09 Javascript
JavaScript实现的数字与字符串转换功能示例
2017/08/23 Javascript
利用three.js画一个3D立体的正方体示例代码
2017/11/19 Javascript
javascript中的this作用域详解
2019/07/15 Javascript
element中table高度自适应的实现
2020/10/21 Javascript
js中实现继承的五种方法
2021/01/25 Javascript
Python实现从脚本里运行scrapy的方法
2015/04/07 Python
使用Python编写简单的画图板程序的示例教程
2015/12/08 Python
解决Pycharm下面出现No R interpreter defined的问题
2018/10/29 Python
Python的高阶函数用法实例分析
2019/04/11 Python
python3的print()函数的用法图文讲解
2019/07/16 Python
python dataframe NaN处理方式
2019/12/26 Python
Python3-异步进程回调函数(callback())介绍
2020/05/02 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
Python建造者模式案例运行原理解析
2020/06/29 Python
Elasticsearch py客户端库安装及使用方法解析
2020/09/14 Python
给水排水工程专业毕业生推荐信
2013/10/28 职场文书
大学生活动总结怎么写
2014/04/29 职场文书
1亿有多大教学反思
2014/05/01 职场文书
2016年十一促销广告语
2016/01/28 职场文书
MySQL中InnoDB存储引擎的锁的基本使用教程
2021/05/26 MySQL
聊聊redis-dump工具安装问题
2022/01/18 Redis