首页 > 代码库 > django学习笔记之forloop
django学习笔记之forloop
在学习django时候,看到djangobook中关于forloop知识详解中,有这么一句话"在一个 {% for %} 块中,已存在的变量会被移除,以避免 forloop 变量被覆盖",这到底是什么含义呢?下面我们来通过实例说明他的含义:
python manager.py shell >>> >>>from django.template import Template, Context >>>t = Template(""" {% for item in items %} {{ forloop }} {% endfor %} """) >>>c = Context({‘items‘: [item for item in range(10)], ‘forloop‘: ‘test‘}) >>>print t.render(c)
这里我们故意在Context里面设置一个forloop字典key,然后在模板里面放一个forloop变量来"引用"传递过来的值,但是结果确不是我们想要的......
>>>t = Template(""" {% for item in items %} {{ forloop.parentloop }} {% endfor %} """) >>>c = Context({‘items‘: [item for item in range(10)], ‘forloop‘: ‘test‘}) >>>print t.render(c)
这个结果就是我们想要的嘛
#########################################################################
结论:
家里人总比外来人要亲嘛!
" 局部变量权利大于外部变量"
......
本文出自 “木子博客” 博客,请务必保留此出处http://ggbond.blog.51cto.com/8886865/1440427
django学习笔记之forloop
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。