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实现换行符转换的脚本的教程
Apr 16 Python
介绍Python的Urllib库的一些高级用法
Apr 30 Python
python logging日志模块的详解
Oct 29 Python
使用Python的package机制如何简化utils包设计详解
Dec 11 Python
python实现识别手写数字 python图像识别算法
Mar 23 Python
Python Socket编程之多线程聊天室
Jul 28 Python
如何使用pyinstaller打包32位的exe程序
May 26 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
Dec 18 Python
keras的ImageDataGenerator和flow()的用法说明
Jul 03 Python
Django:使用filter的pk进行多值查询操作
Jul 15 Python
Python wordcloud库安装方法总结
Dec 31 Python
python 爬取华为应用市场评论
May 29 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获取远程图片并把它保存到本地的代码
2008/04/07 PHP
Yii 2.0如何使用页面缓存方法示例
2017/05/23 PHP
PHP实现字符串的全排列详解
2019/04/24 PHP
laravel 实现登陆后返回登陆前的页面方法
2019/10/03 PHP
Javascript与vbscript数据共享
2007/01/09 Javascript
jquery中常用的SET和GET
2009/01/13 Javascript
基于jquery自己写tab滑动门(通用版)
2012/10/30 Javascript
html超链接打开窗口大小的方法
2013/03/05 Javascript
JS实现下拉框的动态添加(附效果)
2013/04/03 Javascript
老生常谈JavaScript 正则表达式语法
2016/08/20 Javascript
vue.js实现仿原生ios时间选择组件实例代码
2016/12/21 Javascript
JS实现的RGB网页颜色在线取色器完整实例
2016/12/21 Javascript
JS正则表达式修饰符global(/g)用法分析
2016/12/27 Javascript
微信小程序 Tab页切换更新数据
2017/01/05 Javascript
Angular JS 生成动态二维码的方法
2017/02/23 Javascript
Javascript中prototype与__proto__的关系详解
2018/03/11 Javascript
vue data恢复初始化数据的实现方法
2019/10/31 Javascript
vue相关配置文件详解及多环境配置详细步骤
2020/05/19 Javascript
[04:15]DOTA2-DPC中国联赛1月19日Recap集锦
2021/03/11 DOTA
Tornado 多进程实现分析详解
2018/01/12 Python
在Django中输出matplotlib生成的图片方法
2018/05/24 Python
Python中应该使用%还是format来格式化字符串
2018/09/25 Python
Ubuntu下Anaconda和Pycharm配置方法详解
2019/06/14 Python
pybind11在Windows下的使用教程
2019/07/04 Python
Python sorted对list和dict排序
2020/06/09 Python
css图标制作教程制作云图标
2014/01/19 HTML / CSS
枚举和一组预处理的#define有什么不同
2016/09/21 面试题
社区端午节活动方案
2014/01/28 职场文书
交通事故赔偿协议书范本
2014/04/15 职场文书
《荷花》教学反思
2014/04/16 职场文书
社区春季防火方案
2014/06/02 职场文书
大一新生期末自我评价
2014/09/12 职场文书
法人委托书范本格式
2014/09/15 职场文书
2015大学自主招生自荐信范文
2015/03/04 职场文书
启迪人心的励志语录:脾气永远不要大于本事
2020/01/02 职场文书
Nginx 502 Bad Gateway错误原因及解决方案
2021/03/31 Servers