文档章节

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

清风徐不来
 清风徐不来
发布于 2013/12/30 09:53
字数 307
阅读 722
收藏 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

没有更多内容

加载失败,请刷新页面

加载更多

Spring之IOC和AOP学习摘要

一、IOC(Inversion of Control)或者依赖注入(Dependency Injection) 1、底层实现原理:反射 2、三大核心接口: BeanFactory:简单容器系列,只是实现了容器最基本的功能。 ApplicationC...

狠一点
16分钟前
4
0
缓存架构SpringBoot集成Curator实现zookeeper分布式锁

一、分布式锁简介 1、什么是锁 在单机环境下,当存在多个线程可以同时改变某个共享变量时,就需要同步来实现该功能,使其线程安全。 而同步就是通过锁来实现的。锁保证了同一时刻只有一个线程...

架构师springboot
18分钟前
1
0
11《Java核心技术》之Java提供了哪些IO方式? NIO如何实现多路复用?

一、提出问题 IO 一直是软件开发中的核心部分之一,伴随着海量数据增长和分布式系统的发展,IO 扩展能力愈发重要。幸运的是,Java 平台 IO 机制经过不断完善,虽然在某些方面仍有不足,但已经...

飞鱼说编程
25分钟前
2
0
简单介绍Java 的JAR包、EAR包、WAR包区别

WAR包 WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。War专用于Web方面。大部分的JAVA WEB工程,都是打成WAR包进行发布的。 War是...

linuxprobe16
26分钟前
1
0
55:Mysql用户管理|常用sql语句|mysql数据库备份恢复

1、Mysql用户管理; 场景,为了安全,新建的站点,创建新的用户,或者给已有用户授权,对某个库或者某个表有权限; 语法: grant all on *.* to 'user'@'127.0.0.1' identified by 'password'; g...

芬野de博客
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部