Django之模板语言(四) ------>Tags
案例1:单层for循环
# Django 模板语言测试代码
def template_test(request):
name_list=["张三","李四","王五"]
return render(
request,
't_test.html',
{
"name_list":name_list,
}
)
<p>for循环</p>
<ul>
{% for name in name_list %}
<li>{{ forloop.counter }}---{{ name }}</li>
{# counter0表示从显示下标从0开始#}
{% endfor %}
</ul>
<ul>
{% for name in name_list %}
{% if forloop.last %}
<li class="样式1">{{ forloop.revcounter0 }}</li>
{% else %}
<li class="样式2{% if forloop.first %}我是写在标签中的if-else{% endif %}"> {{ forloop.revcounter }}---{{ name }}</li>
{% endif %}
{% endfor %}
</ul>

案例2:双层for循环
<p>双层循环</p>
{% for name in name_list2 %}
{% for name1 in name %}
{{ forloop.counter }}
{{ forloop.parentloop.last }}
{{ name1 }}
{% endfor %}
{% endfor %}

注:forloop.parentloop 表示双层循环的外层
案例:for-empty循环
<p>for-empty循环</p>
{% for name in name_list1 %}
{{ name }}
{% empty %}
<p>name_list1中暂时没有数据哦</p>
{% endfor %}
注:如果in 后面的变量中没有数据,则执行empty中语句。
案例:if-else分支语句
<p>if-elif else</p>
{% if person2 %}
<p>{{ person2 }}</p>
{% elif person1 %}
<p>{{ person1 }}</p>
{% else %}
<p>什么人都有</p>
{% endif %}
{% if name|length > 3 %}
<p>名字长度大于3</p>
{% else %}
<p>名字长度小于3</p>
{% endif %}
注:if条件和filter配合使用
案例:如果变量名字太长,可以用with结构
<p>with语句</p>
{% with name=name_list2.1.2 %}
{{ name }}
{% endwith %}
注:{{name}}等价于{{name_list2.1.2}}
Django之模板语言(四) ------>Tags的更多相关文章
- 第四篇Django之模板语言
Django之模板语言 一 模板的执行 模板的创建过程,对于模板,其实就是读取模板(其中嵌套着模板的标签),然后将Model中获取的数据插入到模板中,最后将信息返回给用户 def current_da ...
- Django的模板语言
Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} 变量名由字母数字和下划线组成. ...
- django 更新 模板语言
Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 在Django的模板语言中按此语法使用:{{ 变量名 ...
- Django之模板语言(一)
1.Django的模板语言(简而言之,字符串替换) 1.目前为止已经学过的模板语言: 1.{{ name }} ------>变量 2. for 循环: {% for i in book_li ...
- Django之模板语言
一.模板语言介绍 模板语言渲染的整个过程其实就是将html转换成函数,并为该函数提供全局变量,然后执行该函数 二.模板语言的语法 模板中也有自己的语言,该语言可以实现数据展示 # 业务请求处理做的页面 ...
- django的模板语言中一些之前没有用过的小点
1.模板语言中的for循环的最后一个的表示方式 {% for auther in auther_list %} {% if forloop.last %} {# 这里的意思是for循环的最后一个的意思 ...
- Django的模板语言介绍
模板语言: 1.我们先看下在命令行中渲染模板 先导入模块对象 2.渲染一个变量 <p>当前时间:{{ time }}</p> return render(request,&qu ...
- django 中模板语言的各种用法
模板 1.视图中使用模板 模版的创建过程,对于模版,其实就是读取模版(其中嵌套着模版标签),然后将 Model 中获取的数据插入到模版中,最后将信息返回给用户 1.普通方法:HTML被直接硬编码在 P ...
- Django之模板语言(三)------>自定义filter
1.自定义filter: 1.在app01下面新建一个templatetags的python package包. 如果没有app01的话,可以通过命令行在manage中进行创建:python mana ...
随机推荐
- JS事件 编程练习-自制计算器 使用JS完成一个简单的计算器功能。实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除。
编程练习 使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除. 提示:获取元素的值设置和获取方法为:例:赋值:document.getElement ...
- Web安全之XSS 入门与介绍
XSS的入门与介绍 跨站攻击 XSS全称跨站脚本(Cross Site Scripting),一种注入式攻击方式. XSS成因 对于用户输入没有严格控制而直接输出到页面 对非预期输入的信任 XSS的危 ...
- 透彻理解并掌握JavaScript的this
前言 无论是JavaScript新手还是老手,JavaScript中的this关键词可能都会令你困惑.本文旨在透彻地阐述this.读完本文,就再也不用怕JavaScript中的this了.你将会知道在 ...
- css样式初始化代码总结
编写css样式之前需要初始化css样式,总结如下: /* CSS Document */ html, body, div, span, object, iframe,h1, h2, h3, h4, h ...
- leetcode-63-不同路径②
题目描述: 第一次提交: class Solution: def uniquePathsWithObstacles(self, obstacleGrid) : m = len(obstacleGrid ...
- Windows netsh
用法: netsh [-a AliasFile] [-c Context] [-r RemoteMachine] [-u [DomainName\]UserName] [-p Password | * ...
- 计算几何——线段和直线判交点poj3304
#include<iostream> #include<cstring> #include<cstdio> #include<algorithm> #i ...
- python实现全局配置和用户配置文件
一.文件目录格式 二.代码 1.conf.__init__.py import importlib import os from conf import gsettings class Setting ...
- JavaScript中的浏览器对象模型
浏览器对象模型 1.浏览器引入JavaScript 1.直接在HTML文件中引入 首先第1种方式就是直接在HTML文档里面引入JavaScript代码.在维护一些老项目的时候,经常 可以看到J ava ...
- http://www.narkii.com/club/forum-46-1.html 纳金学习论坛,主要是讨论一些unty3D方面的事情,技术栈比较前沿,
http://www.narkii.com/club/forum-46-1.html 纳金学习论坛,主要是讨论一些unty3D方面的事情,技术栈比较前沿,