文档章节

Django1.6 settings.py设置找模板的顺序 (TEMPLATE_LOADERS )

清风徐不来
 清风徐不来
发布于 2013/12/30 09:53
字数 307
阅读 720
收藏 0

Django的setting中有关找模板的配置有如下两个:

TEMPLATE_LOADERS

TEMPLATE_DIRS

其中,TEMPLATE_LOADERS是一个string tuple,可选的配置有:

django.template.loaders.filesystem.Loaderdjango.template.loaders.app_directories.Loaderdjango.template.loaders.eggs.Loaderdjango.template.loaders.cached.Loader

前两个Loader默认是打开的,后两个默认是关闭的。

也就是说如果settings.py中不配TEMPLATE_LOADERS的话,相当于这样:

TEMPLATE_LOADERS = ('django.template.loaders.filesystem.Loader',
 'django.template.loaders.app_directories.Loader')

今天只讲讲这两个默认开启的,后续需要用到另外两个时再单独讲。

Django按照顺序依次使用Loader去找模板,一旦一个Loader找到了,就停止,如果没找到,再使用下一个 Loader 去找。每个Loader找模板的方式有所不同,下一段会详细介绍。但要记住,默认情况下,Django 是先使用filesystem.Loader 的,只有当 filesystem.Loader 找不到模板时,才会使用 app_directories.Loader


filesystem.Loader 找模板的方式:它会根据 TEMPLATE_DIRS 去找模板。TEMPLATE_DIRS  是一个“ iterable of filesystem directories”,filesystem.Loader 根据 这里指定的directories,去文件系统中寻找模板。同样是按顺序,找到即停止。默认的settings.py里是没有这个配置的,需要自己手动添加。1.6的Tutorial(Part 2)里给出的例子是:

TEMPLATE_DIRS = [os.path.join(BASE_DIR, 'templates')]


本文转载自:

共有 人打赏支持
清风徐不来
粉丝 11
博文 86
码字总数 34778
作品 0
海淀
高级程序员
七日Python之路--第十一天

(一)关于模板,Template 可以在项目根目录下的settings.py 配置文件中,声明 import osBASEDIR = os.path.dirname(os.path.dirname(file_)) TEMPLATEDIRS = os.path.join(BASEDIR, 'templ......

明天以后
2014/08/08
0
1
Django-Dajax 安装说明书

1.首先是pip install django_dajax(记得root权限,= = 每次pip安装总是忘记 #他会默认同时安装dajaxice #刚才使用了一下,完全没有成功,后来看了看源码,理清了他们的关系 dajax是dajaxic...

伊藤熊吉
2013/11/08
0
0
在Python的Django框架中加载模版的方法

在Python的Django框架中加载模版的方法 为了减少模板加载调用过程及模板本身的冗余代码,Django 提供了一种使用方便且功能强大的 API ,用于从磁盘中加载模板, 要使用此模板加载API,首先你...

开元中国2015
2015/07/17
0
0
Django学习笔记(3)---在模板中调用request

在模板中调用request的时候发现值为空,但是有时候需要在模板中调用该值来实现一些功能,为了避免重复劳动我们希望视图函数在返回是默认返回request 解决方案: 在settings.py中 根据Django文...

Linktime
2013/01/26
0
1
七日Python之路--第三天(之初试Django 2-1)

#意外情况出现,以为电脑硬盘真的坏掉了。原来是忘记插电源 @。@ ~ 前些时间玩游戏,电脑无故突然断电关机,再开机一闪便又突然断电关机。最终找到原因,电脑过热,保护性关机。然后将光驱拆...

明天以后
2014/07/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

c语言之内存分配笔记

先看一个数组: short array[5] = {1,2} // 这儿定义的一个int类型的数组,数组第1和第2个元素值是1和2.其余后面默认会给值为0; 或者 short array[] = {1,2};//这儿数组第1和第2个元素,数组...

DannyCoder
33分钟前
0
0
Shell | linux安装包不用选择Y/N的方法

apt-get install -y packageOR echo "y" | sudo apt-get install package

云迹
今天
1
0
Hadoop的大数据生态圈

基于Hadoop的大数据的产品圈 大数据产品的一句话概括 Apache Hadoop: 是Apache开源组织的一个分布式计算开源框架,提供了一个分布式文件系统子项目(HDFS)和支持MapReduce分布式计算的软件架...

zimingforever
今天
4
0
八大包装类型的equals方法

先看其中一个源码 结论:八大包装类型的equals方法都是先判断类型是否相同,不相同则是false,相同则判断值是否相等 注意:包装类型不能直接用==来等值比较,否则编译报错,但是数值的基本类型...

xuklc
今天
2
0
NoSQL , Memcached介绍

什么是NoSQL 非关系型数据库就是NoSQL,关系型数据库代表MySQL 对于关系型数据库来说,是需要把数据存储到库、表、行、字段里,查询的时候根据条件一行一行地去匹配,当量非常大的时候就很耗...

TaoXu
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部