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程序中使用SQLAlchemy时出现乱码的解决方案
Apr 24 Python
一篇文章入门Python生态系统(Python新手入门指导)
Dec 11 Python
Python开发之快速搭建自动回复微信公众号功能
Apr 22 Python
Python自动化测试ConfigParser模块读写配置文件
Aug 15 Python
python自动发邮件库yagmail的示例代码
Feb 23 Python
python如何通过twisted实现数据库异步插入
Mar 20 Python
opencv与numpy的图像基本操作
Mar 08 Python
Django生成PDF文档显示网页上以及PDF中文显示乱码的解决方法
Dec 17 Python
python3通过udp实现组播数据的发送和接收操作
May 05 Python
python如何支持并发方法详解
Jul 25 Python
如何利用Python动态模拟太阳系运转
Sep 04 Python
Python使用tkinter制作在线翻译软件
Feb 22 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+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
2007/03/07 PHP
深入分析PHP引用(&amp;)
2014/09/04 PHP
PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)
2016/09/11 PHP
javascript 读取图片文件的大小
2009/06/25 Javascript
基于jquery的大众点评,分类导航实现代码
2011/08/23 Javascript
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
java、javascript实现附件下载示例
2014/08/14 Javascript
Javascript中实现String.startsWith和endsWith方法
2015/06/10 Javascript
jQuery实现折叠、展开的菜单组效果代码
2015/09/16 Javascript
TypeOf这些知识点你了解吗
2016/02/21 Javascript
JavaScript实现设计模式中的单例模式的一些技巧总结
2016/05/17 Javascript
JS实现隔行换色的表格排序
2017/03/27 Javascript
Vue键盘事件用法总结
2017/04/18 Javascript
详解angularjs的数组传参方式的简单实现
2017/07/28 Javascript
vue2实现数据请求显示loading图
2017/11/28 Javascript
解决Linux系统中python matplotlib画图的中文显示问题
2017/06/15 Python
python读写csv文件实例代码
2019/07/05 Python
Python使用百度翻译开发平台实现英文翻译为中文功能示例
2019/08/08 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
2019/12/20 Python
python 实现分组求和与分组累加求和代码
2020/05/18 Python
Python with语句用法原理详解
2020/07/03 Python
python实现磁盘日志清理的示例
2020/11/05 Python
CSS3使用border-radius属性制作圆角
2014/12/22 HTML / CSS
CSS3中的opacity属性使用教程
2015/08/19 HTML / CSS
Booking.com荷兰:全球酒店网上预订
2017/08/22 全球购物
Origins悦木之源英国官网:雅诗兰黛集团高端植物护肤品牌
2017/11/06 全球购物
Boolean b = new Boolean(“abcde”); 会编译错误码
2013/11/27 面试题
岗位竞聘演讲稿
2014/01/10 职场文书
国贸专业的职业规划范文
2014/01/23 职场文书
十佳青年个人事迹材料
2014/01/28 职场文书
道德模范先进事迹
2014/02/14 职场文书
学校班班通实施方案
2014/06/11 职场文书
学生未请假就回家检讨书
2014/09/22 职场文书
2015年上半年信访工作总结
2015/03/30 职场文书
步步惊心观后感
2015/06/12 职场文书
python通配符之glob模块的使用详解
2021/04/24 Python