django第三课-数据传递

视图中从模型中查数据

views.py文件中

1
2
3
def index(request):
context = {'title':'小电影哈哈'}
return render(request,'movies/index.html',context=context)

render()方法,第一个参数是request,第二个参数是模板文件,context参数是像模板传递的参数,字典类型

模板文件中:

1
2
3
4
5
6
7
8
9
10
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{title}}</title>
</head>
<body>
<h1>{{title}}</h1>
</body>
</html>

由此可见:

变量以{{}}括起来

如何从models 中取值呢?

1
2
3
4
5
6
7
from django.shortcuts import render
from .models import *

def index(request):
movies = MovieInfo.objects.all();
context = {'list':movies}
return render(request,'movies/index.html',context=context)

models.objects.all()遍历了所有的数据,然后将这个列表传递到模板

1
2
3
4
5
6
7
8
9
10
11
12
<head>
<meta charset="UTF-8">
<title>{{title}}</title>
</head>
<body>
<ul>
{% for movie in list%}
<li>{{movie.mtitle}}</li>
{% endfor%}
</ul>
</body>
</html>

注意这里的循环语句 

1
2
{% for}
{% endfor%}