标签使用 {% %}

注释语句:{# #}

for 循环:

views.py:

from django.shortcuts import render, redirect, HttpResponse
from app01 import models # Filter 测试
def filter_test(request):
hobby = ["Reading", "Basketball", "Movie", "Music"]
return render(request, "filter_test.html", {"hobby_list": hobby,})

filter_test.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Filter 测试</title>
</head>
<body> {% for hobby in hobby_list %}
{{ hobby }}
{% endfor %} </body>
</html>

运行结果:

for 循环的其它使用方式:

forloop.counter 当前循环的索引值,从 1 开始
forloop.counter0 当前循环的索引值,从 0 开始
forloop.revcounter 当前循环的倒序索引值,从 1 开始
forloop.revcounter0 当前循环的倒序索引值,从 0 开始
forloop.first 当前循环是不是第一次循环,结果为布尔值
forloop.last 当前循环是不是最后一次循环,结果为布尔值
forloop.parentloop 本层循环的外层循环

empty:

如果内容为空的话,就执行,配合 for 循环使用

views.py:

from django.shortcuts import render, redirect, HttpResponse
from app01 import models # Filter 测试
def filter_test(request):
hobby = []
return render(request, "filter_test.html", {"hobby_list": hobby,})

filter_test.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Filter 测试</title>
</head>
<body> {% for hobby in hobby_list %}
{{ hobby }}
{% empty %}
<li>没有东西</li>
{% endfor %} </body>
</html>

运行结果:

if 语句:

if 语句支持 ==、>、<、!=、<=、>=、and、or、in、not in、is、is not 判断

views.py:

from django.shortcuts import render, redirect, HttpResponse
from app01 import models # Filter 测试
def filter_test(request):
hobby = ["Reading", "Basketball", "Movie", "Music"]
return render(request, "filter_test.html", {"hobby_list": hobby,})

filter_test.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Filter 测试</title>
</head>
<body> {% if hobby_list|length != 5 %}
<p>列表长度不等于 5</p>
{% else %}
<p>列表长度等于 5</p>
{% endif %} </body>
</html>

运行结果:

with 语句:

用来定义一个中间变量,多用于给一个复杂的变量起别名

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Filter 测试</title>
</head>
<body> {% with a=hobby_list.1 %}
{{ a }}
{% endwith %} <!-- 或者 --> {% with hobby_list.0 as b %}
{{ b }}
{% endwith %} </body>
</html>

运行结果:

注意:“=” 两边不能加空格

Python - Django - 模板语言之 Tags(标签)的更多相关文章

  1. Python - Django - 模板语言之变量

    前言: 在 Django 模板语言中变量用 {{ }},逻辑用 {% %} 在 urls.py 中添加对应关系 from django.conf.urls import url from django ...

  2. Python - Django - 模板语言之 Filters(过滤器)

    通过管道符 "|" 来使用过滤器,{{ value|过滤器:参数 }} Django 的模板语言中提供了六十个左右的内置过滤器 urls.py: from django.conf. ...

  3. python django 模板语言循环字典

    urls.py from django.conf.urls import url from django.contrib import admin from cmdb import views url ...

  4. Python - Django - 模板语言之自定义过滤器

    自定义过滤器的文件: 在 app01 下新建一个 templatetags 的文件夹,然后创建 myfilter.py 文件 这个 templatetags 名字是固定的,myfilter 是自己起的 ...

  5. Django模板语言,标签整理

    Django模板语言 标签 内置标签引用 1. autoescape 控制自动转义是否可用. 这种标签带有任何 on 或 off 作为参数的话,他将决定转义块内效果. 该标签会以一个endautoes ...

  6. 6月15日 python学习总结 Django模板语言相关内容

    Django模板语言相关内容   Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} ...

  7. Django模板语言 标签整理

    Django模板语言 标签 内置标签引用 1. autoescape 控制自动转义是否可用. 这种标签带有任何 on 或 off 作为参数的话,他将决定转义块内效果. 该标签会以一个endautoes ...

  8. Django之模板语言(四) ------>Tags

    案例1:单层for循环 # Django 模板语言测试代码 def template_test(request): name_list=["张三","李四",& ...

  9. Django模板语言初识

    一.Django框架简介 1.MVC框架 MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控 ...

随机推荐

  1. Vue 项目目录结构分析

    Vue项目目录结构分析 ├── v-proj | ├── node_modules // 当前项目所有依赖,一般不可以移植给其他电脑环境 | ├── public | | ├── favicon.ic ...

  2. 获取上一个页面的data

    let pages = getCurrentPages();// 获取页面栈 let current = pages[pages.length - 1]; // 当前页面 let url = curr ...

  3. Linux学习建议[转]

    端正学习态度学linux不会为了当黑客或者骇客,如果你为了当黑客或骇客而学习Linux,那么你离进监狱不远了,只是时间早晚而已.很多小白都知道“黑客攻击工具”很多来源与Linux平台上的,我也曾指导过 ...

  4. 飞扬的小鸟 DP

    飞扬的小鸟 DP 细节有点恶心的DP,设\(f[i][j]\)表示横坐标为\(i\)(从\(0\)开始)高度为\(j\)时,屏幕点击的最小次数为\(f[i][j]\),转移便很好写了,这里要注意枚举当 ...

  5. 【一起来烧脑】一步学会AngularJS系统

    AngularJS是一个JavaScript框架 一个用JavaScript编写的库 [外链图片转存失败(img-JUTh171K-1563341248796)(https://upload-imag ...

  6. 一次 react-router 中遇到的小坑

    react-router Link 标签不生效的问题 废话不多说, 直接上问题, 排解过程和答案 现象: 发现 使用 Link 标签没有 元素的样式和效果, 也不能进行跳转 代码如下: render( ...

  7. MYSQL安装报错需要.NET4.0

    MySQL安装,提示需要.NET4.0 解决:下载安装.NET4.0即可 链接:https://pan.baidu.com/s/1u0e0lafBbR0QYEcXFsv9sQ 提取码:q6rr 复制这 ...

  8. np.vstack()和np.hstack()

    本文链接:https://blog.csdn.net/m0_37393514/article/details/79538748在这里我们介绍两个拼接数组的方法: np.vstack():在竖直方向上堆 ...

  9. Understanding glibc malloc

    https://wooyun.js.org/drops/深入理解%20glibc%20malloc.html https://sploitfun.wordpress.com/2015/02/10/un ...

  10. 从内核3.7版本开始,Linux就开始支持VXLAN 到了内核3.12版本,Linux对VXLAN的支持已经完备,支持单播和组播,IPv4和IPv6。

    一.关于VXLAN VXLAN 是 Virtual eXtensible LANs 的缩写,它是对 VLAN 的一个扩展,是非常新的一个 tunnel 技术,在Open vSwitch中应用也非常多. ...