模板路径
在配置文件 settings.py 中找到 TEMPLATES 设置来配置。
这是一个设置选项的列表,模板大都包含两项通用设置;
两种方式配置模板:
第一种:DIRS 定义一个目录列表,模板引擎按列表顺序搜索这些目录以查找模板源文件。将 templates 放在主项目目录下。
第二种:APP_DIRS 告诉模板引擎是否应该进入每个已经安装的应用中查找模板,值为 True,则模板会去安装了的 app 下面的 templates 文件夹查找模板。所以在每个 app 的里面创建模板目录 templates 存放模板,这种方式需要将这个 app 添加到 settings.py 文件的 INSTALLED_APPS 列表中。
模板变量
1.语法:{{ 变量名 }}
2.命名由字母和数字以及下划线组成,不能有空格和标点符号。
3.可以使用字典、模型、方法、函数、列表
4.不要和 python 或 django 关键字重名
原因:如果 data 是一个字典,那么访问 data.items 将会访问 data 这个字典的 key 名为 items 的值,而不会访问字典的 items 方法。
5.变量和查找
. 点在模板渲染时有特殊的含义。变量名中点表示查找。当模板系统遇到变量名中的一个点时,它会按下面的顺序进行查找:
字典查找,属性查找,列表索引查找。
模板变量的例子:
views.py 文件
Django 模板过滤器
①模板过滤器
作用:对变量进行过滤。在真正渲染出来之前,过滤器会根据功能处理好变量,然后得出结果后再替换掉原来的变量展示出来。
管道符号进行链式调用,比如实现一个功能,先把所有字符变成小写,把第一个字符转换成大写。
使用参数:过滤器可以使用参数,在过滤器名称后面使用冒号“:”,再加上参数,比如要把一个字符串中所有的空格去掉,则可以使用 cut 过滤器
语法如下:{{ fruits|cut:" " }}
注意:使用参数的时候,冒号和参数之间不能有任何空格。
过滤器参数,可以使用变量:
字符串相加,数字相加,列表相加,如果失败,将会返回一个空字符串。
②Django 常用的过滤器
date 和 time 过滤器格式
③过滤器例子
views.py
④关于自动转义
什么是自动转义?
自动转义是将变量的一些特殊字符,比如左箭头(<),右箭头(>)转义成 html 代码,这样做的目的是为了处理一些不安全的变量。
<:转义成 <
>:转义成 >
‘:转义成 '
":转义成 "
&:转义成 &