3/21 Django框架 模板路径及模板过滤器
1.模板路径查找
先找settings.py里的TEMPLATES列表下的DIRS路径。如果APP_DIRS为True,还会到注册了的APP文件夹下依次查找templates文件(注册即在INSTALLED_APPS列表下添加APP文件夹)。
2.模板变量
静态页面 动态页面
- 不随时间,客户端的变化而变化的页面,内容不变。
- 页面内容,会随着时间,访问者的不同,呈现不同的变化。
模板变量语法
render(request, 'teachers/index', context = {'now': now})
语法:'{{变量名}}',是context字典里的键
由字母、数字以及下划线组成,也不能以数字开头,不能以下划线开头,不能有空格和标点符号,不要使用python或者django的关键字
变量解析规则
- 当模板引擎遇到了变量时,他会计算该变量,并且将其替换为结果
- 当模板引擎在变量中遇到点(.)时,他会按照以下顺序尝试查找:
- 字典键值查找
- 属性或方法查找
- 数字索引查找
- 如果结果是一个可调用(callable),则调用它,结果为模板变量的值
3.过滤器
{{变量名|过滤器名:参数}}
{{now|date:"D d M Y"}}
4.静态文件(图片,CS,JS)
路径设置
在项目目录下的settings.py里,django.contrib.staticfiles这个app被包含在了INSTALL_APPS中。
设置
#settings.py
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
- STATIC_URL='/static/'
静态文件引用
{% load static %} #写在模板头
{% static '' %}