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解析xml模块封装代码
Feb 07 Python
批量获取及验证HTTP代理的Python脚本
Apr 23 Python
Python使用time模块实现指定时间触发器示例
May 18 Python
python 实现在Excel末尾增加新行
May 02 Python
Python中函数参数调用方式分析
Aug 09 Python
PyCharm代码提示忽略大小写设置方法
Oct 28 Python
django 实现编写控制登录和访问权限控制的中间件方法
Jan 15 Python
在python里面运用多继承方法详解
Jul 01 Python
django中的图片验证码功能
Sep 18 Python
如何使用Python破解ZIP或RAR压缩文件密码
Jan 09 Python
Python 使用 PyQt5 开发的关机小工具分享
Jul 16 Python
解决python3.x安装numpy成功但import出错的问题
Nov 17 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
Syphon 使用方法
2021/03/03 冲泡冲煮
PHPMailer邮件类利用smtp.163.com发送邮件方法
2008/09/11 PHP
深入PHP magic quotes的详解
2013/06/17 PHP
php 生成签名及验证签名详解
2016/10/26 PHP
php操作redis数据库常见方法实例总结
2020/02/20 PHP
由浅到深了解JavaScript类
2006/09/08 Javascript
jQuery1.5.1 animate方法源码阅读
2011/04/05 Javascript
jQuery EasyUI API 中文文档 - Tabs标签页/选项卡
2011/10/01 Javascript
JQuery验证jsp页面属性是否为空(实例代码)
2013/11/08 Javascript
判断JS对象是否拥有某种属性的两种方式
2013/12/02 Javascript
JavaScript实现twitter puddles算法实例
2014/12/06 Javascript
JavaScript生成福利彩票双色球号码
2015/05/15 Javascript
详谈javascript异步编程
2016/02/21 Javascript
详解基于Vue+Koa的pm2配置
2017/10/24 Javascript
vue左侧菜单,树形图递归实现代码
2018/08/24 Javascript
Vue父子组件之间的通信实例详解
2018/09/28 Javascript
js+css实现全屏侧边栏
2020/06/16 Javascript
Python求两个list的差集、交集与并集的方法
2014/11/01 Python
python实现搜索指定目录下文件及文件内搜索指定关键词的方法
2015/06/28 Python
Python存取XML的常见方法实例分析
2017/03/21 Python
Python-Seaborn热图绘制的实现方法
2019/07/15 Python
对Django的restful用法详解(自带的增删改查)
2019/08/28 Python
用openCV和Python 实现图片对比,并标识出不同点的方式
2019/12/19 Python
python实现的批量分析xml标签中各个类别个数功能示例
2019/12/30 Python
np.random.seed() 的使用详解
2020/01/14 Python
Matplotlib使用Cursor实现UI定位的示例代码
2020/03/12 Python
浅谈Python中threading join和setDaemon用法及区别说明
2020/05/02 Python
用纯css3和html制作泡沫对话框实现代码
2013/03/21 HTML / CSS
canvas绘制图片drawImage使用方法
2020/09/15 HTML / CSS
Elemis美国官网:英国的第一豪华护肤品牌
2018/03/15 全球购物
是否有自动比较结构的方法
2015/06/03 面试题
美发活动策划书
2014/01/14 职场文书
四风问题对照检查整改措施思想报告
2014/10/05 职场文书
政风行风建设整改方案
2014/10/27 职场文书
超市收银员岗位职责
2015/04/07 职场文书
Python使用scapy模块发包收包
2021/05/07 Python