第一章 Django
五、模板
1. 概述
Django中的模板是指可以动态生成任何基于文本格式文件的技术(如HTML、CSS等)。
Django中内置了自己的模板系统,称为DTL(Django Template Language), Django模板语言。
2. 配置
settings.py中关于模板的配置如下:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
# 指定模板文件存储的位置
'DIRS': [ BASE_DIR , 'templates'],
# 自动搜索应用目录
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
3. 渲染模板
在Django的模板系统中,可通过render()函数来完成渲染模板的功能。
其语法结构是:
from django.shortcuts import render
render(request,template_name,content=None,content_type=None,status=None)
request代表用于生成此响应的请求对象template_name代表要渲染的模板文件的名称content代表要传递到模板的数据形成的数据字典content_type代表模板文件的MIME类型,默认为text/htmlstatus代表响应的状态码,默认为200
render()函数返回HttpResponse对象,是更加简洁的输出。
六、DTL
DTL中的语法涉及四个部分:
- 注释 – 注释
- 变量 – 变量在模板被执行时将被替换为实际值 – { { … }}
- 标签 – 用于控制模板逻辑 {% … %}
- 过滤器 – 用于转换变量或标签的值
1. 变量
在DTL中的变量通过双花括号进行访问:
{
{
variable }}
{
{
variable.key }}
{
{
variable.index }}
{
{
variable.property }}
views.py的代码如下:
def variable

最低0.47元/天 解锁文章
71万+

被折叠的 条评论
为什么被折叠?



