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中的decode()方法的使用
May 18 Python
Python内建函数之raw_input()与input()代码解析
Oct 26 Python
深入理解Python爬虫代理池服务
Feb 28 Python
Python smtplib实现发送邮件功能
May 22 Python
浅谈pyqt5中信号与槽的认识
Feb 17 Python
Python第三方库face_recognition在windows上的安装过程
May 03 Python
Python+OpenCV+pyQt5录制双目摄像头视频的实例
Jun 28 Python
Python 实例方法、类方法、静态方法的区别与作用
Aug 14 Python
Python 字符串处理特殊空格\xc2\xa0\t\n Non-breaking space
Feb 23 Python
如何基于python3和Vue实现AES数据加密
Mar 27 Python
python使用布隆过滤器的实现示例
Aug 20 Python
Django vue前后端分离整合过程解析
Nov 20 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小型企业库存管理系统的设计与实现代码
2011/05/16 PHP
PHP fopen()和 file_get_contents()应用与差异介绍
2014/03/19 PHP
详解php设置session(过期、失效、有效期)
2015/11/12 PHP
JavaScript OOP类与继承
2009/11/15 Javascript
24款非常有用的 jQuery 插件分享
2011/04/06 Javascript
『JavaScript』限制Input只能输入数字实现思路及代码
2013/04/22 Javascript
jQuery中prev()方法用法实例
2015/01/08 Javascript
jQuery实现checkbox全选的方法
2015/06/10 Javascript
javascript动态生成树形菜单的方法
2015/11/14 Javascript
使用微信小程序开发前端【快速入门】
2016/12/05 Javascript
javascript 组合按键事件监听实现代码
2017/02/21 Javascript
快速使用node.js进行web开发详解
2017/04/26 Javascript
简单实现vue验证码60秒倒计时功能
2017/10/11 Javascript
vue.js在标签属性中插入变量参数的方法
2018/03/06 Javascript
解决iView Table组件宽度只变大不变小的问题
2020/11/13 Javascript
python执行get提交的方法
2015/04/29 Python
Python按行读取文件的简单实现方法
2016/06/22 Python
python版飞机大战代码分享
2018/11/20 Python
python超时重新请求解决方案
2019/10/21 Python
Python实现的北京积分落户数据分析示例
2020/03/27 Python
快速解决Django关闭Debug模式无法加载media图片与static静态文件
2020/04/07 Python
pandas dataframe 中的explode函数用法详解
2020/05/18 Python
日本最大的眼镜购物网站:Oh My Glasses
2016/11/13 全球购物
模具设计与制造专业应届生求职信
2013/10/18 职场文书
聘任书模板
2014/03/29 职场文书
大学生活自我评价
2014/04/09 职场文书
一份恶作剧的检讨书
2014/09/13 职场文书
学校食堂标语
2014/10/06 职场文书
2014年项目工作总结
2014/11/24 职场文书
九九重阳节致辞
2015/07/31 职场文书
生产车间管理制度
2015/08/04 职场文书
诺贝尔奖获得者名言100句:句句启人心智,值永久收藏
2019/08/09 职场文书
Python Pandas pandas.read_sql函数实例用法
2021/06/21 Python
实现一个简单得数据响应系统
2021/11/11 Javascript
MySQL如何修改字段类型和字段长度
2022/06/10 MySQL
Nginx安装配置详解
2022/06/25 Servers