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的*args和**kwargs用法
Nov 01 Python
使用url_helper简化Python中Django框架的url配置教程
May 30 Python
Python快速从注释生成文档的方法
Dec 26 Python
Python使用requests发送POST请求实例代码
Jan 25 Python
PYQT5设置textEdit自动滚屏的方法
Jun 14 Python
在Django admin中编辑ManyToManyField的实现方法
Aug 09 Python
详解python中的生成器、迭代器、闭包、装饰器
Aug 22 Python
利用Python的sympy包求解一元三次方程示例
Nov 22 Python
Python requests获取网页常用方法解析
Feb 20 Python
基于python实现FTP文件上传与下载操作(ftp&sftp协议)
Apr 01 Python
keras实现图像预处理并生成一个generator的案例
Jun 17 Python
Python wordcloud库安装方法总结
Dec 31 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
adodb与adodb_lite之比较
2006/12/31 PHP
PHP中json_encode、json_decode与serialize、unserialize的性能测试分析
2010/06/09 PHP
PHP处理会话函数大总结
2015/08/05 PHP
Zend Framework教程之Zend_Db_Table_Row用法实例分析
2016/03/21 PHP
laravel 中某一字段自增、自减的例子
2019/10/11 PHP
jQuery select的操作实现代码
2009/05/06 Javascript
jCallout 轻松实现气泡提示功能
2013/09/22 Javascript
JavaScript也谈内存优化
2014/06/06 Javascript
javascript数组详解
2014/10/22 Javascript
Javascript中的五种数据类型详解
2014/12/26 Javascript
JavaScript使用indexOf获得子字符串在字符串中位置的方法
2015/04/06 Javascript
简述Jquery与DOM对象
2015/07/10 Javascript
jQuery过滤HTML标签并高亮显示关键字的方法
2015/08/07 Javascript
JavaScript的removeChild()函数用法详解
2015/12/27 Javascript
javascript如何定义对象数组
2016/06/07 Javascript
AngularJS 避繁就简的路由
2016/07/01 Javascript
Javascript获取background属性中url的值
2016/10/17 Javascript
jQuery Datatable 多个查询条件自定义提交事件(推荐)
2017/08/24 jQuery
vue-awesome-swiper 基于vue实现h5滑动翻页效果【推荐】
2018/11/08 Javascript
jQuery zTree树插件的使用教程
2019/08/16 jQuery
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
centos下更新Python版本的步骤
2013/02/12 Python
使用Python操作Elasticsearch数据索引的教程
2015/04/08 Python
python使用arp欺骗伪造网关的方法
2015/04/24 Python
在Django中使用Sitemap的方法讲解
2015/07/22 Python
Python 模拟登陆的两种实现方法
2017/08/10 Python
pandas读取csv文件,分隔符参数sep的实例
2018/12/12 Python
python批量读取文件名并写入txt文件中
2020/09/05 Python
Python爬虫解析网页的4种方式实例及原理解析
2019/12/30 Python
HTML5公共页面提取作为公用代码的方法
2020/06/30 HTML / CSS
医生进修自我鉴定
2014/01/19 职场文书
新闻编辑专业毕业自荐书范文
2014/02/05 职场文书
文明班级申报材料
2014/12/24 职场文书
大学生实习介绍信
2015/05/05 职场文书
利用python做表格数据处理
2021/04/13 Python
Python matplotlib绘制雷达图
2022/04/13 Python