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 相关文章推荐
Windows下PyMongo下载及安装教程
Apr 27 Python
Python编程中对super函数的正确理解和用法解析
Jul 02 Python
python thrift搭建服务端和客户端测试程序
Jan 17 Python
Python进度条实时显示处理进度的示例代码
Jan 30 Python
朴素贝叶斯Python实例及解析
Nov 19 Python
python交易记录整合交易类详解
Jul 03 Python
linux环境中没有网络怎么下载python
Jul 07 Python
如何使用django的MTV开发模式返回一个网页
Jul 22 Python
Django ORM 聚合查询和分组查询实现详解
Aug 09 Python
python用requests实现http请求代码实例
Oct 31 Python
python基于event实现线程间通信控制
Jan 13 Python
python如何写try语句
Jul 14 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 得到根目录的 __FILE__ 常量
2008/07/23 PHP
10个实用的PHP代码片段
2011/09/02 PHP
让PHP更快的提供文件下载的代码
2012/06/13 PHP
Laravel 框架返回状态拦截代码
2019/10/18 PHP
javascript hashtable实现代码
2009/10/13 Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
2011/11/30 Javascript
火狐textarea输入法的bug的触发及解决
2013/07/24 Javascript
jQuery ajaxForm()的应用
2016/10/14 Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
2016/11/25 Javascript
Vue.js事件处理器与表单控件绑定详解
2017/03/20 Javascript
js按条件生成随机json:randomjson实现方法
2017/04/07 Javascript
Angular 4根据组件名称动态创建出组件的方法教程
2017/11/01 Javascript
Vue微信项目按需授权登录策略实践思路详解
2018/05/07 Javascript
jQuery实现菜单的显示和隐藏功能示例
2018/07/24 jQuery
微信小程序实现获取小程序码和二维码java接口开发
2019/03/29 Javascript
echarts大屏字体自适应的方法步骤
2019/07/12 Javascript
layui实现鼠标移动到单元格上显示数据的方法
2019/09/11 Javascript
layui框架与SSM前后台交互的方法
2019/09/12 Javascript
JS实现骰子3D旋转效果
2019/10/24 Javascript
vue移动端模态框(可传参)的实现
2019/11/20 Javascript
基于javascript实现移动端轮播图效果
2020/12/21 Javascript
javascript实现简单页面倒计时
2021/03/02 Javascript
浅谈python socket函数中,send与sendall的区别与使用方法
2017/05/09 Python
Python django使用多进程连接mysql错误的解决方法
2018/10/08 Python
Python利用递归实现文件的复制方法
2018/10/27 Python
TensorFlow通过文件名/文件夹名获取标签,并加入队列的实现
2020/02/17 Python
Python字典实现伪切片功能
2020/10/28 Python
表彰大会主持词
2014/03/26 职场文书
民主生活会对照检查材料
2014/09/22 职场文书
党员自我剖析材料范文
2014/10/06 职场文书
实习证明格式范文
2014/10/14 职场文书
关于清明节的演讲稿2015
2015/03/18 职场文书
2015年体育部工作总结
2015/04/02 职场文书
受欢迎的自荐信,就这么写!
2019/04/19 职场文书
2019个人工作自我评价范文(3篇)
2019/09/19 职场文书
基于CSS制作创意端午节专属加载特效
2022/06/01 HTML / CSS