Django学习整理
来源:互联网 发布:实对称矩阵对角化方法 编辑:程序博客网 时间:2024/05/20 16:33
Template默认目录设置
import os.pathTEMPLATE_DIRS = (os.path.join(os.path.dirname(__file__), 'templates').replace('\\','/'),)
这个例子使用了神奇的 Python 内部变量__file__ ,该变量被自动设置为代码所在的 Python 模块文件名。 `` os.path.dirname(__file__)`` 将会获取自身所在的文件,即settings.py 所在的目录,然后
由os.path.join 这个方法将这目录与 templates 进行连接。如果在windows下,它会智能地选择正确的后
向斜杠”“进行连接,而不是前向斜杠”/”。
————————————————————————————————————————————————————————————————————
include 模板标签
在讲解了模板加载机制之后,我们再介绍一个利用该机制的内建模板标签: {% include %} 。该标签允许在
(模板中)包含其它的模板的内容。 标签的参数是所要包含的模板名称,可以是一个变量,也可以是用单/双引
号硬编码的字符串。 每当在多个模板中出现相同的代码时,就应该考虑是否要使用 {% include %} 来减少重
复。
下面这两个例子都包含了 nav.html 模板。这两个例子是等价的,它们证明单/双引号都是允许的。
{% include 'nav.html' %}{% include "nav.html" %}下面的例子包含了 includes/nav.html 模板的内容:
{% include 'includes/nav.html' %}下面的例子包含了以变量 template_name 的值为名称的模板内容:
{% include template_name %}和在 get_template() 中一样, 对模板的文件名进行判断时会在所调取的模板名称之前加上来自 TEMPLATE_DIRS
的模板目录。
所包含的模板执行时的 context 和包含它们的模板是一样的。 举例说,考虑下面两个模板文件:
# mypage.html<html><body>{% include "includes/nav.html" %}<h1>{{ title }}</h1></body></html># includes/nav.html<div id="nav">You are in: {{ current_section }}</div>如果你用一个包含 current_section的上下文去渲染 mypage.html这个模板文件,这个变量将存在于它所包含
(include)的模板里,就像你想象的那样。
如果{% include %}标签指定的模板没找到,Django将会在下面两个处理方法中选择一个:
如果 DEBUG 设置为 True ,你将会在 Django 错误信息页面看到 TemplateDoesNotExist 异常。
如果 DEBUG 设置为 False ,该标签不会引发错误信息,在标签位置不显示任何东西。
- Django学习整理
- django学习整理
- Django新手学习总结整理记录
- django常用命令整理
- Django笔记整理1
- Django笔记整理2
- Django admin 的整理
- Django目录整理
- django学习
- 学习django
- Django 学习
- Django学习
- Django 学习
- django学习
- Django 学习
- django学习
- Django学习
- Django学习
- 面试经验
- APDU命令集
- 修改代码的艺术(奋斗的小鸟)_PDF 电子书
- 语音知识回顾和总结---短时频域性质
- 最小C基础库
- Django学习整理
- 黑马程序员——简单画板的制作
- C++虚函数编译分析
- C/C++函数指针传递和typedef的误区
- 利用js来通过复选框控制表格的长宽
- yuv and rgb
- 结构体的内存分配(对齐)
- 文件上传简介1---上传到指定的目录
- OCP-1Z0-052-V8.02-167题