一、模版路径总结
在配置文件setting.py文件中找到TEMPLATES进行文件路径配置:
1. DIRS定义一个目录列表,模板引擎按流标顺序搜索这些目录以查询模板源文件。将templates放在主项目目录下:
2. APP_DIRS告诉模板引擎是否应该进入每个已安装的应用中查找模板,值为True则模板会去安装了的app下面的templates文件夹查找模板。所以我们也可以在每个app的狸猫创建模板目录templates存放模版,这种方式需要将这个app添加到setting.py文件的INSTALLED_APPS列表中。
二、模版变量
1. 语法: {{ 变量名 }}
2. 命名由字母和数字以及下划线组成,不能有空格和标点符号
3. 可以使用字典、模型、方法、函数、列表
4. 不要和python或django关键字重名
5. 变量和查找
注:
1. 如果data是一个字典,那么访问data.items将会访问data这个字典的key名的items的值,而不会访问字典的items方法;
2. 点在模板渲染时有特殊的含义。变量名中点表示查找。
app book/views.py文件
def hello(): return 'django' class Fruits: def __init__(self, name, color): self.name = name self.color = color def say(self): return 'HAHAHAHA' ap = Fruits('apple', 'red') ls = ['x', 'y', 'z'] dc = {'a': 1, 'b': 2} from django.shortcuts import render def index_4(request): return render(request, 'book/index.html', context={'books_name': 'python', 'hello': hello, 'fruits_say': ap.say, 'fruits': ap, 'list': ls, 'dict': dc,})
templates/book/index.html文件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>模板变量</title> </head> <body> 这个变量是字符串对象:{{ books_name }}<br> 这个变量是函数对象:{{ hello }}<br> 这个变量是类方法对象:{{ fruits_say }}<br> 这个变量是类对象:{{ fruits }}<br> 这个变量是类对象,访问类对象的属性:{{ fruits.name }}<br> 这个变量是类对象,访问类对象的方法:{{ fruits.say }}<br> 这个变量是列表对象:{{ list }}<br> 这个变量是列表对象,访问列表的元素:{{ list.1 }}<br> 这个变量是字典对象:{{ dict }}<br> 这个变量是字典对象,访问字典的键:{{ dict.a }}<br> </body> </html>
三、常用的过滤器
作用:对变量进行过滤。在真正渲染出来之前,过滤器会根据功能处理好变量,然后得出结果后再替换原来的变量展示出来。
语法:{{fruits|lower}}
语法:{{fruits|lower|capfirst}} 管道符号进行链式调用,比如实现一个功能,先把所有字符变成小写,把第一个字符转换成大写。
语法:{{fruits|cut:" "}} 使用参数:过滤器可以使用参数,在过滤器名称后面使用冒号“:”在加上参数,比如要把一个字符串中所有的空格去掉,则可以使用cut过滤器
常用的过滤器:
date和time过滤器格式
例子:
自动转义:
四、静态文件引用
1. 创建文件 /static/js/myjs.js
2. 创建文件/static/css/mystyle.css
3. 创建文件/static/image/myimage.jpg
4. 创建模板/templates/book/static_test.html
标签:变量,模版,1103,fruits,过滤器,模板,name From: https://www.cnblogs.com/lxinghua/p/17396215.html