一、模板的嵌套是指,我们可以将Html中相同结构的部分提取出来,放在一个文件里然后进行引用,中间需要填充的部分我们使用{%block %} +内容+{%endblock%}来代替,在需要使用地方我们使用{%extends 'base.html'%}来引用。

1.相同的结构部分我们可以将他提取出来。(base.html)

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><title>{%block title%}{% endblock %}</title>
</head>
<body><a href = "{%url 'home'%}"><div><h2>个人博客网站</h2></div></a>{%block content%}{% endblock %}
</body>
</html>

2.文件的使用:需要使用的地方我们将它加进去。最标题使用extends引用一下!

{% extends 'base.html'%}
{#标题#}{% block title %}{{typename.typenames}}{% endblock %}
{#内容#}{% block content %}{#别名需要用引号#}<div><h2>{{typename.typenames}}</h2></div>{%for arcile in blogs%}<a href = "{%url 'blogdetail' arcile.pk%}"><h3>{{arcile.title}}</h3></a><p>{{arcile.content|truncatechars:10}}</p>{%empty%}--暂无博客--{%endfor%}<p>一共有{{blogs|length}}博客</p>{#显示文章博客数量#}{% endblock %}

二、公共全局模板文件的设置。

django默认的模板文件是放在app里面的,但是有些文件我们可能是全局方向上使用的,因此,我们需要建立一个全局方向上的文件夹。

1.建立文件夹后我们把公共部分的模板文件存放在全局文件夹下。然后在setting里面指定一下目录。

BASE_DIR:是基础的文件路径,可以理解为到根目录,用join方法拼接,全局文件夹。

2.app项目里还存在着其他的一些文件,那么可不可以放在全局文件夹下呢?是可以的。只是我们还需要设置一下view下的文件,不然djano找不到.

def blogdetail(request,aricle_id):contenx = {}contenx['detail'] = get_object_or_404(Blog,pk = aricle_id)return render_to_response('blog/detail.html',contenx)
def bloglist(request):contenx = {}contenx['list'] = Blog.objects.all()#获取所有的文章# contenx['count'] = Blog.objects.all().count()return render_to_response('blog/list.html',contenx)

建议:模板文件存放:

如果是这个文件跟着整个项目走的话,最好将文件放在全局的文件夹下,如果是需要做一个单独的app封装的话放在app下

转载于:https://www.cnblogs.com/jeepzp/p/8398558.html

Django-----模板嵌套相关推荐

  1. Django模板过滤器详解

    Django 模板过滤器也是我们在以后基于 Django 网站开发过程中会经常遇到的,如显示格式的转换.判断处理等.以下是 Django 过滤器列表,希望对为大家的开发带来一些方便. 一.形式:小写 ...

  2. python django 模板

    1 用两个大括号括起来的文字{{person_name}} 称为变量 2 被 大括号和面分号包围的文件({% if ordered_warranty %})是模板标签 3 过滤器是用管道符(|) 和U ...

  3. Django 模板语言 标签

    前言:django的模板语法基本和flask的jinja2基本一样.下面比较一下两个模板语法的区别. ------深度变量的查找(万能的句点号) 在 Django 模板中遍历复杂数据结构的关键是句点字 ...

  4. 小白必看!Django 模板语言基础来啦

    作者 | 单雨 责编 | 胡巍巍 出品 | CSDN(ID:CSDNnews) 前言 为了实现模板封装和复用,提高HTML界面调试便捷性以及前后端解耦等目标,Django定义了自己的网络模板语言. 当 ...

  5. Django模板系统(非常详细)

    翻译www.djangobook.com之第四章:Django模板系统 The Django Book:第4章 Django模板系统 revised by xin_wang 前面的章节我们看到如何在视 ...

  6. Python全栈:Django模板

    文章目录 1 模板引擎介绍和选择 2 Django模板相关配置 templates相关配置 3 模板变量的使用 渲染静态图片 渲染 Python中的对象 4 模板标签的使用 循环控制 条件控制 模板注 ...

  7. 翻译www.djangobook.com之第四章:Django模板系统

    [color=red][b]The Django Book:第4章 Django模板系统[/b][/color] revised by [url=http://xin-wang.iteye.com/] ...

  8. Django模板系统(十分 非常详细)

    转载:http://www.czug.org/python/django/04.html 翻译www.djangobook.com之第四章:Django模板系统 The Django Book:第4章 ...

  9. Django模板过滤器 、日期格式化、数学运算

    Django 的模板中的数学运算 前言 django模板只提供了加法的filter,没有提供专门的乘法和除法运算: django提供了widthratio的tag用来计算比率,可以变相用于乘法和除法的 ...

  10. Django模板语言 以及使用

    Django 模板语言 文章目录 Django 模板语言 模板的传参 模板的变量 XSS攻击 反射型xss 存储型xss DOM xss 模板的标签 过滤器 模板的继承 url 反向解析 模板的传参 ...

最新文章

  1. 苹果新算法已混进 iOS 14.3!CSAM 检测技术再遭网友争议
  2. 【Python】Pandas profiling 生成报告并部署的一站式解决方案
  3. 2020 操作系统第四天复习(知识点总结)
  4. leetcode 525. Contiguous Array | 525. 连续数组(Java)
  5. C#判断字符串是否为数字字符串
  6. install yael on the ubuntu 12.04
  7. Win11代言人官宣
  8. HAProxy+apache实现web服务动静分离
  9. 多文件云传输系统框架
  10. SlickEdit基本设置
  11. 进程间通信----共享内存
  12. 嵌入式Linux开发8——UART串口通讯
  13. OSChina 娱乐弹弹弹——问世间情为何物,直教人生死相许
  14. CSS系列之浏览器私有前缀
  15. LINUX静默安装ORACLE19C详细步骤
  16. 艺术画笔见乾坤—Matplotlib
  17. 手持天馈线测试仪基站测试分析专家
  18. 我从DuraznoConf中学到了编程的人性化方面
  19. Java(CSS01)
  20. vc6 调试 附加到进程 列表空_今天,进程告诉我线程它它它它不想活了

热门文章

  1. Linux keypad 设备树,beaglebone black通过devicetree配置矩阵键盘matrix-keypad
  2. android listview 行高度自适应,Android ListView 长度自适应item的内容 计算listview的高度...
  3. Unity Camera
  4. 19春北理工计算机应用基础,19春北理工《计算机应用基础》在线作业(02)【标准答案】.doc...
  5. vscode还用装git_在windows下搭建编程环境git+vscode安装配置教程
  6. php二维数组根据某个字段排序的排序(商品按销量或其他字段排序)
  7. 十一、Oracle学习笔记:高级关联查询
  8. 唯一分解求正约数个数
  9. 从源码解析 Spring JDBC 异常抽象
  10. Spring boot 2.x 错误处理机制 与 定制错误页面