模板的配置
创建模板文件夹 <项目名>/templates/
配置 settings.py 中的 TEMPLATES 选项:
- BACKEND:指定模板的引擎
- DIRS:模板的搜索目录(可以是一个或多个)
- APP_DIRS:是否在要应用中的templates文件夹中搜索模板文件
- OPTIONS:有关模板的选项
其中需要设置 DIRS
选项,设置DIRS:[os.path.join(BASE_DIR,'templates')]
模板的加载方式
方法一
通过 loader 库获取模板,通过HttpResponse进行响应
在视图函数中
from django.template import loader
# 通过loader加载模板
t = loader.get_template("对应的模板文件名")
#将t转换为 HTML 字符串
html = t.render("需要传进去的相应字典数据")
return HttpResponse(html)
方法二
使用 render() 方法直接加载并响应模板
在视图函数中:
from django.shortcuts import render
return render(request,'对应模板文件名',"对应字典数据")
视图层与模板层之间的交互
视图函数中可以将准备好的 python变量 封装到字典传递到模板中
例如:
def xxx_view(request):
dic = {
"变量1":"值1"
"变量2":"值2"
"变量3":"值3"
}
return render(request,'xxx.html',dic)
在模板中,我们可以用 {{变量名}}
的语法调用视图函数传进来的变量
例如使用上面传递的字典数据:
<!DOCTYPE html>
<body>
<p1>{{变量2}}</p1>
</body>
</html>