Django ---- 模板(Templates)

本文深入讲解Django模板系统,包括其功能、使用方法、加载顺序及模板语言DTL的细节,帮助读者理解如何在Django项目中高效地使用模板。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Django ---- 模板

一、模板的功能

产生 html , 控制页面上展示的内容。模板文件不仅仅是一个html 文件。
模板文件包含两个部分:
1)静态内容:css,js,html。
2) 动态内容:用于动态去产生一些网页信息。通过模板语言来产生。

二、模板文件的使用

通常是在视图函数中使用模板产生html 内容返回给客户端。

a) 加载模板文件 loader.get_templates
获取模板文件中的内容,产生一个模板对象。

b)定义一个模板文件的上下文 RequeseContext
给模板文件传递数据。

c)模板渲染产生html 页面内容 render
用来传递的数据替换相应的变量,产生一个替换后的html 内容。

三、模板文件的加载顺序

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'templates')],   # 配置 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',
            ],
        },
    },
]

先在 settings.py 配置好 templates 的路径

1)Django 首先会先配置的模板目录下去找模板文件。
2)去INSTALLED_APPS 下面的每个应用的去找模板文件,前提是应用中必须有templates 文件夹。

四、模板语言

模板语言简称为 DTL。(Django Template Language)

1、模板变量

模板变量名是由数字,字母,下划线和点组成,不能以下划线开头
使用模板变量:{{ 模板变量名}}
{{ book.btitle }}
模板的解析顺序:
例如:{{ book.btitle }}
1)首先把 book 当成一个字典,把 btitle 当成键名,进行取值 book[‘btitle’]
2)把 book 当成一个对象,把 btitle 当成属性,进行取值 book.btitle
3)把book 当成一个对象,把btitle 当成对象的方法 ,进行取值 book.btitle

例如:{{book.0}}
1)首先把book 当成一个字典,把0当成键名,进行取值 book[‘0’]
2)把 book 当成一个列表,把 0 当成下表,进行取值book[0]
如果解析失败,则产生内容时用空字符串填充模板变量。

使用模板变量时,前面的可能是一个字典,可以是一个对象,还可能是一个列表。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值