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 将字符串转换成字典dict
Mar 24 Python
python操作mysql数据库
Mar 05 Python
python 第三方库的安装及pip的使用详解
May 11 Python
Python编程求解二叉树中和为某一值的路径代码示例
Jan 04 Python
numpy中的高维数组转置实例
Apr 17 Python
python os.listdir按文件存取时间顺序列出目录的实例
Oct 21 Python
python中退出多层循环的方法
Nov 27 Python
如何运行带参数的python脚本
Nov 15 Python
python垃圾回收机制(GC)原理解析
Dec 30 Python
python3实现往mysql中插入datetime类型的数据
Mar 02 Python
Python 删除List元素的三种方法remove、pop、del
Nov 16 Python
Python数据结构之队列详解
Mar 21 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
农民C键的运用技巧
2020/03/04 星际争霸
如何获得PHP相关资料
2006/10/09 PHP
php求正负数数组中连续元素最大值示例
2014/04/11 PHP
php自定义session示例分享
2014/04/22 PHP
PHP-FPM之Chroot执行环境详解
2015/08/03 PHP
用php定义一个数组最简单的方法
2019/10/04 PHP
php 的多进程操作实践案例分析
2020/02/28 PHP
window.addeventjs事件驱动函数集合addEvent等
2008/02/19 Javascript
jquery遍历input取得input的name
2009/04/27 Javascript
JS分页效果示例
2013/10/11 Javascript
封装的jquery翻页滚动(示例代码)
2013/11/18 Javascript
js取模(求余数)隔行变色
2014/05/15 Javascript
javascript解析json实例详解
2014/11/05 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
jQuery实现的仿select功能代码
2015/08/19 Javascript
JS模拟Dialog弹出浮动框效果代码
2015/10/16 Javascript
设置点击文本框或图片弹出日历控件的实现代码
2016/05/12 Javascript
jQuery继承extend用法详解
2016/10/10 Javascript
jQuery Pagination分页插件使用方法详解
2017/02/28 Javascript
仿京东快报向上滚动的实例
2017/12/13 Javascript
解决Vue2.x父组件与子组件之间的双向绑定问题
2018/03/06 Javascript
Vue引入sass并配置全局变量的方法
2018/06/27 Javascript
vue表单自定义校验规则介绍
2018/08/28 Javascript
angularjs获取到My97DatePicker选中的值方法
2018/10/02 Javascript
python实现获取序列中最小的几个元素
2014/09/25 Python
深入讲解Python函数中参数的使用及默认参数的陷阱
2016/03/13 Python
python实现BackPropagation算法
2017/12/14 Python
transform python环境快速配置方法
2018/09/27 Python
python中多个装饰器的调用顺序详解
2019/07/16 Python
pygame库实现俄罗斯方块小游戏
2019/10/29 Python
Pytorch to(device)用法
2020/01/08 Python
StubHub哥伦比亚:购买和出售您的门票
2016/10/20 全球购物
大专自我鉴定范文
2013/10/23 职场文书
小饰品店的创业计划书范文
2013/12/28 职场文书
Redis做数据持久化的解决方案及底层原理
2021/07/15 Redis