Django 循环模板标签

1,循环模板标签

Django 模板系统中提供了多种循环模板标签来迭代数据并显示列表、字典或其他可迭代对象。

1.2 {% for %} 标签

用于迭代列表或可迭代对象,并为每个元素提供上下文变量。

{% for item in items %}{{ item }} <!-- 渲染当前迭代项 -->
{% endfor %}

1.3 {% for %} 与索引

在迭代时,可以使用 forloop.counter 访问当前迭代的索引(从1开始)。

{% for item in items %}{{ forloop.counter }}: {{ item }}
{% endfor %}

1.4 {% for %} 与反转索引

使用 forloop.revcounter 访问当前迭代的反转索引(从列表长度开始递减)。

{% for item in items %}{{ forloop.revcounter }}: {{ item }}
{% endfor %}

1.5 {% for %} 与迭代次数

使用 forloop.last 判断当前迭代是否是最后一次迭代。

{% for item in items %}{{ item }}{% if not forloop.last %}, {% endif %}
{% endfor %}

1.6 {% empty %} 标签

如果被迭代的变量为空或不存在,将渲染 {% empty %} 标签和与之对应的 {% endfor %} 之间的内容。

{% for item in items %}{{ item }}
{% empty %}<!-- 没有可迭代的项目时渲染 -->No items to display.
{% endfor %}

1.7{% for %} 与字典

当迭代字典时,可以使用 forloop.counter0 和 forloop.counter 访问键和值。

{% for key, value in my_dict.items %}{{ key }}: {{ value }}
{% endfor %}

示例:

2,添加HTML代码

Test/templates/4/for_demo.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><table border="1">{% for list in lists %}{% if forloop.first %}<tr><td>第一个值:{{ list.书名 }}</td></tr>{% endif %}<tr><td>当前值:{{ list.书名 }}, 价格:{{ list.价格 }}, 当前正序索引:{{ forloop.counter0 }}, 当前倒序索引:{{ forloop.revcounter0 }}</td></tr>{% if forloop.last %}<tr><td>最后一个值:{{ list.书名}}</td></tr>{% endif %}{% endfor %}</table></body>
</html>

3,添加视图函数

Test/app4/views.py

from django.shortcuts import render# Create your views here.
def var(request):name = '小6'# 列表对象lists = ['java', 'python', 'c', 'c++', 'js']# 字典对象dicts = {'姓名': '小强', '年龄':25, '性别':'男'}return render(request, '4/var.html', {'lists': lists, 'dicts': dicts, 'name':name})def if_demo(request):age = 18return render(request, '4/if_demo.html', {'age':age})def for_demo(request):dict1 = {'书名':'Django开发教程', '价格':28, '作者':'小强'}dict2 = {'书名':'java开发教程', '价格':38, '作者':'小红'}dict3 = {'书名':'python开发教程', '价格':48, '作者':'小6'}dict4 = {'书名':'c开发教程', '价格':58, '作者':'小7'}lists = [dict1, dict2, dict3, dict4]return render(request, '4/for_demo.html', {'lists':lists})

4,添加路由地址

Test/app4/urls.py

5,访问页面

http://127.0.0.1:8000/app4/for_demo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/32275.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot 搭建sftp服务 实现远程上传和下载文件

maven依赖&#xff1a; <dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><version>0.1.55</version> </dependency>application.yml sftp:protocol: sftphost: port: 22username: rootpassword: sp…

java中的日志

springboot自带slf4j框架和logback&#xff0c;我们可以移除spring的logging&#xff0c;然后再带入自己的日志框架。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusio…

【MMSegmentation 环境配置】

MMSegmentation 环境配置 1. 创建python 环境2. 安装pytorch3. 安装MMCV4. 安装 MMSegmentation.5. 测试是否安装成功 1. 创建python 环境 conda create --name openmmlab python3.8 -y conda activate openmmlab2. 安装pytorch On GPU platforms: conda install pytorch tor…

如何混淆 net core 8 架构 C# 编译程序

如何混淆 net core 8 架构 C# 编译程序 一、使用混淆工具 .NET Reactor V6.9二、net core 8 架构 C# 编译程序&#xff08;发布的单文件&#xff09;1、通过发布的单文件程序&#xff0c;可以直接在 .NET Reactor 拖入或打开 &#xff0c;勾选自己需要的保护功能。2、勾选自己需…

迈向百亿亿次人工智能数据基础设施

对我来说&#xff0c;在MinIO已经一个多星期了。沉浸在白板会议、架构审查和客户电话中的最大收获是&#xff0c;产品的简单性既是其显着特征&#xff0c;也是其最具决定性的价值驱动因素之一。在规模上尤其如此。由于人工智能的进步&#xff0c;计算能力的爆炸性增长对数据格局…

ArkUI 开发学习随记——登陆界面,正圆头像,主页顶部,列表项案例源码

目录 案例一&#xff1a;登录界面 案例二&#xff1a;正圆头像&#xff0c;胶囊按钮 案例三&#xff1a;主页顶部 案例四&#xff1a;列表项 案例一&#xff1a;登录界面 代码&#xff1a; build() {Column({space:10}){Image($r("app.media.naxida")).width(100)…

什么是N卡和A卡?有什么区别?

名人说&#xff1a;莫听穿林打叶声&#xff0c;何妨吟啸且徐行。—— 苏轼《定风波莫听穿林打叶声》 本篇笔记整理&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 一、什么是N卡和A卡&#xff1f;有什么区别&#xff1f;…

福州大学 2022~2023 学年第 1 学期考试 A 卷压轴题参考答案

题目&#xff1a; 定义一个抽象类Structure&#xff08;含有纯虚函数type函数&#xff0c;用以显示当前结构的类型&#xff1b; 含有show函数&#xff09;&#xff0c; 在此基础上派生出Building类, 用来存储一座楼房的层数、房间数以及它的总平方米数。 建立派生 类House&am…

已解决java.security.acl.AclNotFoundException异常的正确解决方法,亲测有效!!!

已解决java.security.acl.AclNotFoundException异常的正确解决方法&#xff0c;亲测有效&#xff01;&#xff01;&#xff01; 目录 问题分析 出现问题的场景 报错原因 解决思路 解决方法 分析错误日志 检查ACL文件路径和名称 确认系统权限 修改代码逻辑 确保ACL文…

现在这个行情,又又又要开始准备面试了~~

亲爱的程序员朋友们: 这些资料曾经帮助过许多有志之士顺利拿下抖音、快手、阿里等大厂的Offer&#xff0c;现在也希望它们能为你的面试旅程助力&#xff01; 关注【程序员世杰】回复【1024】惊喜等你来拿&#xff01; 截图 关注【程序员世杰】回复【1024】惊喜等你来拿&#xf…

python入门基础知识(错误和异常)

本文部分内容来自菜鸟教程Python 基础教程 | 菜鸟教程 (runoob.com) 本人负责概括总结代码实现。 以此达到快速复习目的 目录 语法错误 异常 异常处理 try/except try/except...else try-finally 语句 抛出异常 用户自定义异常 内置异常类型 常见的标准异常类型 语法…

数据结构---二叉树前中后序遍历

1. 某完全二叉树按层次输出&#xff08;同一层从左到右&#xff09;的序列为 ABCDEFGH 。该完全二叉树的前序序列为() A: ABDHECFG B: ABCDEFGH C: HDBEAFCG D: HDEBFGCA 2. 二叉树的先序遍历和中序遍历如下&#xff1a;先序遍历: EFHIGJK; 中序遍历: HFIEJKG. 则二叉…

Unit redis-server.service could not be found.

我的报错如下Unit redis-server.service could not be found. 关键是刷新后台服务 sudo systemctl daemon-reload启动redis-server sudo systemctl start redis-server查看redis-Server服务状态 sudo systemctl status redis-server

MySQL数据库中的索引知识

MySQL数据库中索引的作用是用来加快数据的查询速度。 索引 index&#xff08;表的层面&#xff09; 在数据库中使用select来查询数据的时候会一条一条得去查询符合要求的数据&#xff0c;而索引就相当于在这张表中依据某一个字段的数值给这张表的数据创建了一个目录。目录帮…

江协科技51单片机学习- p11 静态数码管显示

前言&#xff1a; 本文是根据哔哩哔哩网站上“江协科技51单片机”视频的学习笔记&#xff0c;在这里会记录下江协科技51单片机开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了江协科技51单片机教学视频和链接中的内容。 引用&#xff1a; 51单片机入门教程-2…

35.简易远程数据框架的实现

上一个内容&#xff1a;34.构建核心注入代码 34.构建核心注入代码它的调用LoadLibrary函数的代码写到游戏进程中之后无法调用&#xff0c;动态链接库的路径是一个内存地址&#xff0c;写到游戏进程中只把内存地址写过去了&#xff0c;内存地址里的内容没写过去&#xff0c;导致…

Netty ByteBuf 使用详解

文章目录 1.概述2. ByteBuf 分类3. 代码实例3.1 常用方法3.1.1 创建ByteBuf3.1.2 写入字节3.1.3 扩容3.1.2.1 扩容实例3.1.2.2 扩容计算新容量代码 3.1.4 读取字节3.1.5 标记回退3.1.6 slice3.1.7 duplicate3.1.8 CompositeByteBuf3.1.9 retain & release3.1.9.1 retain &a…

Jmeter5.X性能测试【完整版】

目录 一、Http基础协议和解析 1、浏览器的B/S架构和C/S架构 &#xff08;1&#xff09;CS架构 &#xff08;2&#xff09;BS架构 &#xff08;3&#xff09;URL理解 2、Http超文本传输协议 &#xff08;1&#xff09;含义 # 协议 # json协议 # xml协议 &#xff08;…

分布式锁(Redission)

分布式锁&#xff1a; 使用场景&#xff1a; 通常对于一些使用率高的服务&#xff0c;我们会进行多次部署&#xff0c;可能会部署在不同的服务器上&#xff0c;但是他们获取和操作的数据仍然是同一份。为了保证服务的强一致性&#xff0c;我们需要对线程进行加锁&#xff0c;…

WRONGPASS invalid username-password pair or user is disabled

连接redis客户端的时候报错&#xff1a;WRONGPASS invalid username-password pair or user is disabled 当前redis版本为7.2.4 一、问题分析 默认情况下&#xff0c;Redis 7.0 使用默认用户名 default 和空密码进行身份验证。如果未设置 requirepass&#xff0c;则默认用户名…