Python - Django - 模板语言之 Tags(标签)

标签使用 {% %}

注释语句:{# #}

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>

运行结果:

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

转载于:https://www.cnblogs.com/sch01ar/p/11253019.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值