django学习笔记3----开发第一个Template
2018-01-04 本文已影响0人
hs_a2d1
什么是:1个1个的HTML文件,使用了Django Template language语言(DTL)。但也可以使用其他模板语言,需要改settings.py里的TEMPLATES里的'BACKEND'。
怎么做:在app目录下创建目录Templates,在里面创建HTML文件。
将新建的HTML文件命名为index.html
改views的响应函数:
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def index(request): #接受请求,做出响应
return render(request,'index.html',{'hello':'Hello,Blog!'})
这里render函数有3参数,第一个request,第二个html文件(字符串),第三个可选,是个字典。键是变量名,值是变量值。这个变量可以在html文件里用到:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>{{hello}}</h1>
</body>
</html>
这里网页显示了Hello,Blog!但是html文件里没直接写,而是调用了hello这个变量,用两个大括号廓上了。如果render函数第三个参数不写,则html文件里需要写Hello,Blog!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>Hello,Blog!</h1>
</body>
</html>
这是DTL的初步试用
如果app个数较多,则不能直接把html文件放在Templates文件夹中,这样做会使得django混淆两个同名html,按installed——apps的顺序显示第一个。
应该在Templates文件夹下再建一个app名的文件夹,把html文件放进去,再把views.py里render的第二个参数'index.html'改为'blog/index.html'。