Python的Django框架中TEMPLATES项的设置教程


Posted in Python onMay 29, 2015

TEMPLATES

Django 1.8的新特性
一个列表,包含所有在Django中使用的模板引擎的设置。列表中的每一项都是一个字典,包含某个引擎的选项。

以下是一个简单的设定,告诉Django模板引擎从已安装的应用程序(installed applications)的templates子目录中读取模板:

TEMPLATES = [
  {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'APP_DIRS': True,
  },
]

以下选项对所有引擎(backends)都可用。
BACKEND

默认:无定义
使用的模板引擎。内建的模板引擎有:

'django.template.backends.django.DjangoTemplates'
  'django.template.backends.jinja2.Jinja2'

通过设置BACKEND为一个完整的(fully-qualified)路径(例如'mypackage.whatever.Backend'),你可以使用非Django自带的引擎。
NAME

默认:看下面
该模板引擎的别名。它是一个标识符,让你在渲染时可以选择一个引擎。别名在所有配置好的模板引擎中必须是唯一的。
当未提供值时,默认是定义引擎类的模板名,也即是与BACKEND相邻的最后一部分。
例如如果引擎是'mypackage.whatever.Backend',那么它的默认名为'whatever'。
DIRS

默认:[](空列表)
引擎用于查找模板源文件的目录,按搜索顺序排列。
APP_DIRS

默认:False
引擎是否在已安装应用程序(的目录)内查找模板源文件。
OPTIONS

默认:{}(空字典)
传递给该模板引擎(backend)的其他参数。不同的引擎,可用的参数不一样。
TEMPLATE_CONTEXT_PROCESSORS

默认:

("django.contrib.auth.context_processors.auth",
"django.template.context_processors.debug",
"django.template.context_processors.i18n",
"django.template.context_processors.media",
"django.template.context_processors.static",
"django.template.context_processors.tz",
"django.contrib.messages.context_processors.messages")

    自1.8版本起,不赞成使用:
    在一个DjangoTemplates引擎中的OPTIONS设置'context_processors'选项来代替。

用于填充在RequestContext中的上下文的调用函数(callables)的元组。这些函数获取一个request对象作为它的参数,返回一个将要填充至上下文项目的字典。

  •     Django 1.8的变化:
  •     在Django 1.8中,内建模板的上下文处理器从django.core.context_processors移至django.template.context_processors。

TEMPLATE_DEBUG

默认:False

  •     自1.8版本起,不赞成使用:
  •     在一个DjangoTemplates引擎中的OPTIONS设置'debug' 选项来代替。

一个打开/关闭模板调试模式的布尔值。如果值是True,在模板渲染期间,抛出任何异常都将显示一个可爱的、详情报告的错误页面。该页面包含该模板相关的代码段,并且使用适当的行高亮。
注意如果DEBUG是True,Django只会显示可爱的错误页面。
参见 DEBUG。
TEMPLATE_DIRS

默认:()(空列表)

  •     自1.8版本起,不赞成使用:
  •     在一个DjangoTemplates引擎中设置'DIRS'选项来代替。

django.template.loaders.filesystem.Loader搜索模板源代码的路径列表,,按搜索顺序排列。
注意即使在Windows中,这些路径也是使用Unix风格的正斜杠。
参见 The Django template language 。
TEMPLATE_LOADERS

默认:

('django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader')
  •     自1.8版本起,不赞成使用:
  •     在一个DjangoTemplates引擎中的OPTIONS设置'loader'选项来代替。

模板读取器类的元组,用字符串指定。每个读取器类知道怎样从一个特定源(particular source)中导入模板。可选地,也可以使用一个元组来代替使用一个字符串。元组中的第一项应该是读取器的模块,随后的项是在初始化时传递给读取器。参见 The Django template language: for Python programmers。
TEMPLATE_STRING_IF_INVALID

默认:''(空字符串)

  •     自1.8版本起,不赞成使用:
  •     在一个DjangoTemplates引擎中的OPTIONS设置'string_if_invalid' 选项来代替。

当使用了不可用的(比如说拼写错误)变量时模板系统输出的字符串。参见 How invalid variables are handled。

   

Python 相关文章推荐
Python对象的深拷贝和浅拷贝详解
Aug 25 Python
跟老齐学Python之大话题小函数(2)
Oct 10 Python
Python实现telnet服务器的方法
Jul 10 Python
Python的Flask开发框架简单上手笔记
Nov 16 Python
matplotlib简介,安装和简单实例代码
Dec 26 Python
查看Django和flask版本的方法
May 14 Python
python3爬虫之设计签名小程序
Jun 19 Python
Python将文本去空格并保存到txt文件中的实例
Jul 24 Python
浅析Python函数式编程
Oct 06 Python
Python获取命令实时输出-原样彩色输出并返回输出结果的示例
Jul 11 Python
Python用access判断文件是否被占用的实例方法
Dec 17 Python
python通过函数名调用函数的几种方法总结
Jun 07 Python
编写Python脚本把sqlAlchemy对象转换成dict的教程
May 29 #Python
Python fileinput模块使用实例
May 28 #Python
Python sys.argv用法实例
May 28 #Python
Python中exit、return、sys.exit()等使用实例和区别
May 28 #Python
Python中的with...as用法介绍
May 28 #Python
python关键字and和or用法实例
May 28 #Python
Python yield 使用浅析
May 28 #Python
You might like
PHP Error与Logging函数的深入理解
2013/06/03 PHP
PHP中exec函数和shell_exec函数的区别
2014/08/20 PHP
CodeIgniter多语言实现方法详解
2016/01/20 PHP
Yii2创建多界面主题(Theme)的方法
2016/10/08 PHP
利用 fsockopen() 函数开放端口扫描器的实例
2017/08/19 PHP
jquery $(document).ready() 与window.onload的区别
2009/12/28 Javascript
超级24小时弹窗代码 24小时退出弹窗代码 100%弹窗代码(IE only)
2010/06/11 Javascript
iframe的onload在Chrome/Opera中执行两次Bug的解决方法
2011/03/17 Javascript
JavaScript按位运算符的应用简析
2014/02/04 Javascript
JS操作CSS随机改变网页背景实现思路
2014/03/10 Javascript
js实现键盘操作实现div的移动或改变的原理及代码
2014/06/23 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
2014/09/10 Javascript
详解JavaScript的while循环的使用
2015/06/03 Javascript
node.js微信公众平台开发教程
2016/03/04 Javascript
深入解析jQuery中Deferred的deferred.promise()方法
2016/05/03 Javascript
小程序实现选择题选择效果
2018/11/04 Javascript
解决layui下拉框监听问题(监听不到值的变化)
2019/09/28 Javascript
JS原型prototype和__proto__用法实例分析
2020/03/14 Javascript
解决vue 给window添加和移除resize事件遇到的坑
2020/07/21 Javascript
vue 解决mintui弹窗弹起来,底部页面滚动bug问题
2020/11/12 Javascript
python中urllib模块用法实例详解
2014/11/19 Python
Django小白教程之Django用户注册与登录
2016/04/22 Python
Python实现将HTML转换成doc格式文件的方法示例
2017/11/20 Python
利用python将图片转换成excel文档格式
2017/12/30 Python
python实现word 2007文档转换为pdf文件
2018/03/15 Python
python实现桌面壁纸切换功能
2019/01/21 Python
python中numpy数组与list相互转换实例方法
2021/01/29 Python
八年级历史教学反思
2014/01/10 职场文书
教师个人自我鉴定
2014/02/08 职场文书
上课玩手机检讨书
2014/02/08 职场文书
诚信贷款承诺书
2014/05/30 职场文书
2014财务人员自我评价范文
2014/09/21 职场文书
开展党的群众路线教育实践活动工作总结
2014/11/05 职场文书
优秀共青团员事迹材料
2014/12/25 职场文书
党支部培养考察意见
2015/06/02 职场文书
幼儿园小朋友毕业感言
2015/07/30 职场文书