首先需要知道后端向前端传递数据的方式或者有哪些数据类型django后端可以传给前端?在变量传值的时候,既支持python的基本数据类型也支持python的函数、类和对象。基本数据类型包括str, int, float, bool, set, dict, list, tuple
本文主要展示传递单数据,列表,字典以及if语句,for循环:
views.py如下:
from django.shortcuts import render,HttpResponse
Create your views here.
def template(request):
name="Jenny"
#列表
listuse=['1','2','3','4','5','6']
#字典
zi={"name":"Li Ming","Age":"13","phone":"123456789"}
#列表+字典
lizi=[
{"name": "Li Ming", "Age": "13", "phone": "123456789"},
{"name": "Jenny", "Age": "12", "phone": "123456788"},
{"name": "Danny", "Age": "14", "phone": "123456780"}
]
return render(request,"template.html",
{
"l1":name,
"l2":listuse,
"l3":zi,
"l4":lizi,
})
template.html如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>模板语法使用</h1>
<h2>{{ l1 }}</h2>
<hr/>
<h2>{{ l2 }}</h2>
<h2>{{ l2.2 }}</h2>
<div>
{% for ii in l2 %}
<li>{{ ii }}</li>
{% endfor %}
</div>
<hr/>
<div>
<h2>{{ l3 }}</h2>
<h2>{{ l3.name }}</h2>
<h2>{{ l3.Age }}</h2>
<h2>{{ l3.phone }}</h2>
</div>
<ul>
{% for i,j in l3.items %}
<li>{{ i }}={{ j }}</li>
{% endfor %}
</ul>
<hr/>
<div>
<h2>{{ l4.0 }}</h2>
<h2>{{ l4.1.name }}</h2>
<ul>
{% for i in l4 %}
<li>{{ i.name }}={{ i.phone }}</li>
{% endfor %}
</ul>
</div>
<hr/>
{% if l3.name == "Danny" %}
<h3>Yes!!!!</h3>
{% elif l3.name == "Jenny"%}
<h3>.......</h3>
{% else %}
<h3>No11111</h3>
{% endif %}
</body>
</html>
看一下template.html显示: