在学习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)

这个结果就是我们想要的嘛

#########################################################################

结论:

  1. 家里人总比外来人要亲嘛!

  2. " 局部变量权利大于全局变量"

  3. ......

转载于:https://blog.51cto.com/ggbond/1440427

django学习笔记之forloop相关推荐

  1. Django学习笔记(五)

    Django学习笔记(五) MVC和MTV对比 传统的MVC(Model-View-Controller) M 模型层,主要是对数据库层的封装 V 视图层,向用户展示结果 C 控制层,用于请求,获取数 ...

  2. django 学习笔记

    django 学习笔记 启动虚拟机: workon bj18_py3 创建一个项目: django-admin.py startproject mysite 启动开发用服务器:从外层项目 mysite ...

  3. 分享:Django学习笔记(4)---ManyToMany 添加、删除关联、查询

    Django学习笔记(4)---ManyToMany 添加.删除关联.查询 http://my.oschina.net/u/572994/blog/105280

  4. django学习笔记03

    原创博客地址:django学习笔记03 第一章,模型层 查询集API 一.QuerySet何时被提交 迭代 QuerySet是可迭代的,在首次迭代查询集时执行实际的数据库查询 切片:如果使用切片的&q ...

  5. django学习笔记02

    原创博客地址:django学习笔记02 第一章:模型层 1.8 查询操作 一.创建对象 1 2 3 4 5 >>> from blog.models import Blog > ...

  6. django学习笔记01

    原创博客地址:django学习笔记01 基于教程,刘江的博客教程Django教程:https://www.liujiangblog.com/course/django/87 第一章:模型层 1.1 模 ...

  7. Django学习笔记---第一天

    Django学习笔记 1.Django的安装 //如果不指定版本号,默认安装最新版 pip3 install django==1.11.8 关于Django的版本和python的版本依赖关系,请看下图 ...

  8. 千锋Django学习笔记

    千锋Django学习笔记 文章目录 千锋Django学习笔记 写在前面 1. MVC和MTV 2. Django简介 3. MTV简单流程 4. 和Model的简单对接 5. Model 6. Tem ...

  9. 梅科尔工作室-Django学习笔记(二次学习)(3)

    本次学习的是如何用django实现前端鸿蒙OS登录 下面介绍一下本次的操作过程. 1.首先创立MySQL数据并将数据库导入到django当中 其中:导入数据库的操作: 2.配置urls 对应新建的pe ...

最新文章

  1. INVEST原则的应用
  2. 4.Java面向对象相关知识总结
  3. 取消Windows server 2008关机提示备注的方法
  4. CFA将人工智能列入考试内容折射啥
  5. 3G了 由PC-手机 我们想了些什么呢
  6. 将node.js程序作为服务,并在windows下开机自动启动(使用forever)
  7. java微调器_java-更改微调器标题栏样式
  8. 第15节 三个败家子(15)—— 总被死后累
  9. OSPF 单区域配置实例学习记录
  10. MPEG-4、MPEG-4/AVC、H.264之间的联系与区别
  11. Codevs 3322 时空跳跃者的困境(组合数 二项式定理)
  12. 如何彻底清理注册表?
  13. MES生产调度管理系统源码 MES系统源码
  14. 股神巴菲特有多少钱?股神巴菲特的故事
  15. NFA到DFA的转化
  16. 深圳电信isp劫持www.google-analytics.com的ga.js来弹出广告窗口分析
  17. 上海大专计算机专业排名,2019上海软科世界一流学科排名计算机科学与工程专业排名乔治华盛顿大学排名第301-400...
  18. vs+qt环境下, 对stk进行二次开发笔记
  19. 电脑无线不显示宽带不能连接服务器,电脑上网为什么只显示宽带连接不显示无线网络连接?...
  20. Latch Enqueue Hash Chains Doc ID 445076 1

热门文章

  1. CentOS 7 防火墙,端口开启命令
  2. MVC5网站部署到IIS7
  3. 00020970-0000-0000-C000-000000000046
  4. 单元测试Struts2Spring项目的Action和Service(包含源码)
  5. 串口项目——Cseiralport类的应用(1 )
  6. 用 JavaScript 验证只能输入数字,并做数字加总
  7. 软件开发报价的计算方法[转载]
  8. asp.net 中 SESSION和COOKIE的使用
  9. vue中this.$router.push()路由传值和获取的两种常见方法
  10. html博客页面实验报告,×××实验报告