Django(四)模板文件中的循环
编辑views.py
from django.shortcuts import render
from django.shortcuts import HttpResponse #此行增加
# Create your views here.
def plan(request): #此函数增加
user=[]
for i in range(20):
user.append({'username':'jack'+str(i),'age':18+i})
return render(request,'hello.html',{'hello': user})
增加一个for循环,创建一个字典的列表。
把这个列表替换进模板
继续编辑模板文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Hello</title>
</head>
<body>
{% for row in hello %}
<h1>{{ row.username }}---{{ row.age }}</h1>
{% endfor %}
</body>
</html>
body中的就是循环
有循环头部{% for row in hello %}
有循环尾部 {% endfor %}
注意其中我使用了hello user row row.username row.age
hello在render中,作为模板被替换的标志
hello在模板中,作为循环的列表。
user,在render中,作为替换内容,把hello这个特殊标记替换为user
user,在模板中,已经变成标记了,也就是hello
row,在for循环中,代表列表的一个条目,一行?
列表元素是字典,所以循环体中用row.username来标识列表中其中一个字典的索引。
row.age也一样。
你也可以试试下面的效果
{% for row in hello %}
<h1>{{ row}}</h1>
{% endfor %}
像我这样不专业的业余选手,更喜欢用另一种方法,不用字典,用列表
row.0 row.1 row.2
也是可以用的参数。替换前,它是列表才行。
相关代码如下:
def plan(request): #此函数增加
user=[]
for i in range(20):
temp = [18+i , '--',19+i]
user.append(temp)
return render(request,'hello.html',{'hello': user})
{% for row in hello %}
<h1>{{ row.0}}</h1>
<h3>{{ row.1 }}</h3>
<h6>{{ row.2 }}</h6>
{% endfor %}
Django(四)模板文件中的循环的更多相关文章
- Django DTL模板语法中的循环的笔记
for...in...笔记: for...in...标签: for...in...类似于Python中的for...in....可以遍历列表.元组.字符串.字典等一切可以遍历的对象.示例代码如下: { ...
- Django DTL模板语法中的循环
from django.shortcuts import render def index(request): context={ 'books':[ '5年高考3年模拟', '家猪养殖与配种', ' ...
- phpcms-v9 前台模板文件中{pc}标签的执行流程
前台pc标签的使用:{pc:content 参数名="参数值" 参数名="参数值" 参数名="参数值"} 如: {pc:content ac ...
- ecshop的模板文件中如何判断用户是否登录
ecshop中对于smarty的运用和改造有很大的值得借鉴的地方,在dwt模板文件中可以直接判断用户是否登录,现在有规定,凡是只展示不销售的电商平台,一律不得展示商品价格,但可以在用户登录后显示. & ...
- django的模板语言中一些之前没有用过的小点
1.模板语言中的for循环的最后一个的表示方式 {% for auther in auther_list %} {% if forloop.last %} {# 这里的意思是for循环的最后一个的意思 ...
- smarty模板引擎中section循环loop与total的区别
在smarty模板引擎的section循环中 $data=[101,102,103,105,104]; section的两个属性total与loop {section foo $data start= ...
- Thymeleaf常用语法:模板文件中表达式调用Java类的静态方法
在模板文件的表达式中,可以使用“${T(全限定类名).方法名(参数)}”这种格式来调用Java类的静态方法. 开发环境:IntelliJ IDEA 2019.2.2Spring Boot版本:2.1. ...
- HtmlWebpackPlugin用的html的ejs模板文件中如何使用条件判断
折腾: [已解决]给react-hot-boilerplate中的index.html换成用HtmlWebpackPlugin自动生成html 期间,已经有了思路了,但是不知道如何在ejs的html中 ...
- Django DTL模板语法中的过滤器
template_filter_demo 过滤器相关: 一.形式:小写{{ name | lower }} 二.串联:先转义文本到HTML,再转换每行到 <p> 标签{{ my_text| ...
随机推荐
- Python3基础 str split 用指定的字符将字符串分割
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- luoguP2572 [SCOI2010]序列操作
题目&&链接 反正数据都是一样的,luogu比较友好 luogu bzoj lxhgww最近收到了一个01序列,序列里面包含了n个数,这些数要么是0,要么是1,现在对于这个序列有五种变 ...
- HDU 4638Group (莫队)
Group Problem Description There are n men ,every man has an ID(1..n).their ID is unique. Whose ID is ...
- git源码阅读
https://github.com/git-for-windows/git/issues/1854 https://github.com/git-for-windows/git/pull/1902/ ...
- LOJ#2632. 「BalticOI 2011 Day1」打开灯泡 Switch the Lamp On
题目描述 译自 BalticOI 2011 Day1 T3「Switch the Lamp On」有一种正方形的电路元件,在它的两组相对顶点中,有一组会用导线连接起来,另一组则不会.有 N×M 个这样 ...
- BZOJ 4571 【SCOI2016】 美味
题目链接:美味 如果题目里面没有那个\(a_i\),这道题就可以直接在\(Trie\)树上走一走就做完了.现在多了个\(a_i\),\(Trie\)树就无能为力了. 我们考虑一下在\(Trie\)树上 ...
- 引用类(RC)
R 中还有一种具有引用语义的类系统,它更像其他面向对象编程语言中的类系统.首先,为了定义一个引用类( reference class , RC ),我们要给 setRefClass( )一个类定义.不 ...
- 《剑指offer》第十一题(旋转数组的最小数字)
// 面试题:旋转数组的最小数字 // 题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. // 输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素.例如数组 // {3, ...
- Codeforces A - Bear and Prime 100(交互题)
A - Bear and Prime 100 思路:任何一个合数都可以写成2个以上质数的乘积.在2-100中,除了4,9,25,49外都可以写成两个以上不同质数的乘积. 所以打一个质数加这四个数的表: ...
- [don't have permission to access]的一个经典原因
那就是 ..... SELinux ...... 几年前好像经历过这个恶梦.现在又经历了一回. 从Windows上传了一个目录,做一个apache的别名Alias, 结果总是没有权限. chmod 7 ...