详解Python的Django框架中的templates设置
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。
热文精选
更多资讯推荐
更多- Stable Diffusion 2.0 发布,加强成人内容过滤
- .NET 7 正式发布
- A3Mall 开源商城系统 v2.1 发布
- FydeOS v14 版本更新:优化输入法体验+重构安卓子系统+全新应用启动器
- ThinkPHP V6.0.8版本发布——多环境变量配置支持
- 毕昇 JDK 8u292、11.0.11 发布!
- KubeVela 1.0:开启可编程式应用平台的未来
- Eclipse 4.19 稳定版发布
- 阿里巴巴 Arthas 3.5.0 版本发布,支持反编译打印行号和统一鉴权
- Debian 11 Bullseye 即将进入冻结,Debian 13 代号 Trixie
- Rancher 2.5 发布,新增支持边缘集群的 GitOps
- FlashDB IoT 超轻量级嵌入式数据库