day18-django 模板语言循环字典

一、引子

  之前我们学习了 循环列表,循环元组。类表,元组都是有序的通过  row.1   row.2  row.3 ...来获取。

字典是无序,没有索引值,那么字典怎么循环呢?今天我们就来搞它。。。

二、字典循环

  继续上一回的栗子,我们就用CBV 搞一把。。。

views 代码

  

 1 userdic={
 2     "k1":"v1",
 3     "k2":"v2",
 4     "k3":"v3",
 5     "k4":"v4",
 6     "k5":"v5",
 7 }
 8 
 9 
10 class Home(View):
11 
12     def dispatch(self, request, *args, **kwargs):
13         print("begin----------")
14         res=super(Home,self).dispatch(request,*args,**kwargs)
15         print("after----------")
16         return res
17 
18     def post(self,request):
19         m1=request.method
20         return render(request,"home.html",{'method':m1})
21 
22     def get(self,request):
23         m2=request.method
24         return render(request,"home.html",{"method1":m2,"userdic":userdic})  #把用户字典传到前端进去

    前端代码,

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6 </head>
 7 <body>
 8 
 9     <div>
10         <h1>字典循环</h1>
11             <h3>循环字典,key</h3>
12             <ul>
13                 {% for k in userdic.keys %}
14                     <li>{{ k }}</li>
15                 {% endfor %}
16             </ul>
17             <h3>循环字典,value</h3>
18             {% for v in userdic.values %}
19                 <span>{{ v }}</span>
20             {% endfor %}
21             <h3>循环字典 键值对</h3>
22             {% for k,v in userdic.items %}
23                 <span>{{ k }}-{{ v }}</span>
24             {% endfor %}
25     </div>
26 </body>
27 </html>
结果:

 


三、总结

  与python 类似,不加()  

  1.循环key ,  for k in dict.keys

  2.循环value   ,for v in dict.values

  3.循环 key,value ,  for k,v in dict.items

 

posted @ 2018-07-13 13:54  东郭仔  阅读(404)  评论(0)    收藏  举报