对于页面大部分一样,我们可以使用模板布局来简化

可以查看tornado中的模板引擎,基本一致

python---tornado模板引擎

对于相同代码部分,我们可以提取出来,放在布局文件layout.py中

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.page-nav{
height: 50px;
background-color: rebeccapurple;
} .page-content .menu{
height: 500px;
background-color: antiquewhite;
float: left;
width: %;
}
.page-content .content{
height: 500px;
background-color: cornflowerblue;
float: left;
width: %;
}
.page-bottom{
height: 30px;
background-color: blueviolet;
clear: both;
}
</style>
</head>
<body>
<div class="page-nav"></div>
<div class="page-content">
<div class="menu">
<p><a href="/blog/order/">订单</a></p>
<p><a href="/blog/shop/">购物车</a></p>
</div>
{% block content %}
#此处是不同的地方,需要对应每个功能来显示
{% endblock %}
</div>
<div class="page-bottom"> </div>
</body>
</html>

调用布局文件,进行使用:

{% extends "base.html" %}

{% block content %}
<div class="content">
订单
</div>
{% endblock %}
{%  extends "base.html" %}

{% block content %}
<div class="content">
购物车
</div>
{% endblock %}

对于其他js,css等文件也可以这样进行修改

补充:可以继承父类的代码

父类:

        {% block content %}
<div>hahahha</div>
{% endblock %}

子类:

{% extends "base.html" %}

{% block content %}
<div class="content">
订单
</div>
{% endblock %}

其中订单会覆盖父类的div,要想两者不相互冲突,需要加上:

{% extends "base.html" %}

{% block content %}
<div class="content">
{{ block.super }}
订单
</div>
{% endblock %} 

注意点:对于每个APP,我们应该将其添加到settings文件中

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'repository',
'web',
]

若是未添加,那么在APP下的视图中调用的模板中的一些功能将消失,例如block等。导致页面无法正常显示

python---django中模板布局的更多相关文章

  1. Python Django中QQ邮箱授权码问题

    Python Django中QQ邮箱授权码问题 系统及软件版本如下: Ubuntu Kylin 16.04 Python 3.5.1 Django 1.9.7 PyCharm Community Ed ...

  2. RSA算法在Python Django中的简单应用

    说明 RSA算法是当今使用最广泛,安全度最高的加密算法. • RSA算法的安全性理论基础 [引]根据百科介绍,对极大整数做因数分解的难度决定了RSA算法的可靠性.换言之,对一极大整数做因数分解愈困难, ...

  3. Django中模板的用法简介

    1. 模板系统的介绍 Django作为一个Web框架,其模板所需的HTML输出静态部分以及动态内容插入 模板由HTML代码和逻辑控制代码构成 Django框架的模板语言的语法格式: {{var_nam ...

  4. django 中模板语言的各种用法

    模板 1.视图中使用模板 模版的创建过程,对于模版,其实就是读取模版(其中嵌套着模版标签),然后将 Model 中获取的数据插入到模版中,最后将信息返回给用户 1.普通方法:HTML被直接硬编码在 P ...

  5. Python Django 中的STATIC_URL 设置和使用解析

    使用Django静态设置时,遇到很多问题,经过艰苦的Baidu, stack overflow, Django原档阅读,终于把静态图片给搞出来了.特记录下来. 关键的概念:Django中,静态资源的存 ...

  6. python django -4 模板

    模板介绍 作为Web框架,Django提供了模板,可以很便利的动态生成HTML 模版系统致力于表达外观,而不是程序逻辑 模板的设计实现了业务逻辑(view)与显示内容(template)的分离,一个视 ...

  7. python Django中的cookie和session

    目录 Cookie 1.1获取Cookie 1.2设置Cookie Session 1.数据库Session 2.缓存Session 3.文件Session 4.缓存+数据库Session Cooki ...

  8. django中模板变量与内置标签以及过滤器

    本文参考 官方文档 . 一  模板变量 格式: {{ variable_name }} variable_name   命名规则与变量命名规则类似,允许字符数字下划线,不允许标点. variable_ ...

  9. Django中模板使用

    第一步:配置 1.在工程中创建模板目录templates. 2.在settings.py配置文件中修改TEMPLATES配置项的DIRS值:TEMPLATES = [ { 'BACKEND': 'dj ...

随机推荐

  1. xgboost学习与总结

    最近在研究xgboost,把一些xgboost的知识总结一下.这里只是把相关资源作总结,原创的东西不多. 原理 xgboost的原理首先看xgboost的作者陈天奇的ppt 英文不太好的同学可以看看这 ...

  2. Json To CSharp

    This is a tools for generate json reader classes. In some case, when we get a json data, we hope to ...

  3. RPG游戏开发基础教程

    RPG游戏开发基础教程 第一步 下载RPG Maker 开发工具包 1.RPG Maker 是什么? RPG Maker 是由Enterbrain公司推出的RPG制作工具. 中文译名为RPG制作大师. ...

  4. LintCode——交叉字符串

    描述:给出三个字符串:s1.s2.s3,判断s3是否由s1和s2交叉构成. 样例:s1 = "aabcc" s2 = "dbbca" - 当 s3 = &quo ...

  5. 区块链学习:Windows下搭建以太坊私有链环境

    一:安装geth客户端 Windows要求必须是64位系统,从官方网站下载编译好的win64客户端,下载解压后只有一个Geth.exe问价,运行安装即可,下载地址如下: https://github. ...

  6. [咸恩静][Real Love]

    歌词来源:http://music.163.com/#/song?id=484056972 作曲 : Andrew 崔/Brian Cho/220 [作曲 : Andrew 崔/Brian Cho/2 ...

  7. Scrum立会报告+燃尽图(Final阶段第七次)

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2486 项目地址:https://coding.net/u/wuyy694 ...

  8. 《Linux内核设计与实现》读书笔记——第五章

    <Linux内核设计与实现>读书笔记--第五章 标签(空格分隔): 20135321余佳源 第五章 系统调用 操作系统中,内核提供了用户进程与内核进行交互的一组接口.这些接口让应用程序受限 ...

  9. SDN开源项目以及组织机构

    SDN开源项目以及组织机构 以上内容均摘自网络 如有侵权,请转告笔者,立即删除 两大组织 ONF (Open Networking Foundation) Google.Facebook.Micros ...

  10. week4

    History:Commercialization and Growth course Explosive Growth of the Internet and Web The Year of the ...