标签使用 {% %}

注释语句:{# #}

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. c# 隐藏窗口在ALT+TAB中

    winform: protected override CreateParams CreateParams { get { const int WS_EX_APPWINDOW = 0x40000; c ...

  2. C++编程习惯

    1.初始化列表,尽量使用. 2.函数是否加const,只用而不改变就推荐加上const.如自定义的get某个属性的函数. 3.函数参数尽量用引用传递,返回值也优先考虑引用类型(引用必须保证在使用前,本 ...

  3. 【CSP游记S】

    简略:初三小蒟蒻本想体验一下提高,结果尝到了省选的滋味.fclose没有打,目前不知道会不会有影响,很伤心. day 1 大早上的6:30起床天好黑啊~,想起这次没有面包吃,到华生园买了包熊博士(毕竟 ...

  4. BlockingCollection<T> 类实现 列队操作

    官方文档 为实现 IProducerConsumerCollection<T> 的线程安全集合提供阻塞和限制功能. 通过 BlockingCollection<T> 实现列队调 ...

  5. 配置asgi来达到能处理websocket

    在项目中使用了webscoket进行实时通讯,但是生产环境又使用了django+nginx+uwsgi的部署方式,我们都知道uwsgi并不能处理websocket请求,所以需要asgi服务器来处理we ...

  6. CSS滑动门

    如下图所示,每个导航栏目的文字个数不一样多,有的长,有的短,如何用一张背景图片,适应不同字数”的导航条,“滑动门”设计的非常巧妙,采用两个相同的背景图像,一左一右,一个负责提供左边框,一个负责提供右边 ...

  7. 利用fgetc合并2个源文件的内容,到一个新的文件中

    #include <stdio.h> #include <stdlib.h> //功能: 合并2个源文件的内容,到一个新的文件中 int main(int a,char *ar ...

  8. 最长升序列 DP

    class Solution: def lengthOfLIS(self,nums): if not nums:return 0 #边界处理 dp = [1 for _ in range(len(nu ...

  9. [WARNING] 找不到编译器:wepy-compiler-less。 [Error] 未发现相关 less 编译器配置,请检查wepy.config.js文件。

    npm install less 之后 npm install wepy-compiler-less 解决 请点赞!因为你的鼓励是我写作的最大动力! 吹逼交流群:711613774

  10. 《挑战30天C++入门极限》C/C++中字符串常量的不相等性及字符串的Copy

        C/C++中字符串常量的不相等性及字符串的Copy #include <iostream>    void main(void)  {      if("test&quo ...