django的模板标签语言

Django - 模板层 - 变量、过滤器、标签 - DTL语言 目录 一、模板概念 二、 模板语法 - 变量 : {{ 变量 }} 1、直接调用输出 - 相当于print 2、深度取值 - 获取对象内部值 三、模板语法 - 过滤器 :{{ 位置参数1 | 过滤器函数 : 位置参数2}} 1- default :如果一个变量是false或者为空,使用给定的默认值。否则,使用变量的值。  2- length : 返回值的长度。它对字符串和列表都起作用... 阅读详情

目录

1.变量   {{   }}

2.标签   {% %}

(1){% if %}

(2){% ifequal %}

(3){% for %}

在这讲一下{{forloop}}变量:

3.过滤器  filter  {{   |   }}


django拥有一套完整的模板系统

1.变量   {{   }}

(1)传入前端的变量最外层一定是一个字典

(2)具体的变量可以是字符串,列表,字典类型

(3)变量通过.方法可以调用自己的无参数方法,索引

(4)如果变量是字典,也可以通过键调用值

views.py

from django.http import HttpResponse
from django.template import Template,Context
def variable(request):
    template=Template(
        """
            <p>变量常规用法:{{variable}}</p>
            <p>变量常规用法_变量列表:{{variable1}}</p>
            <p>变量常规用法_变量索引:{{variable1.1}}</p>
            <p>变量常规用法_变量无参数方法:{{variable2.upper}}</p>
            <p>变量常规用法_变量字典:{{variable3}}</p>
            <p>变量常规用法_变量字典键值:{{variable3.name}}</p>
        """
    )
    data=Context({
        "variable":"张三",
        "variable1":[1,2,3,4],
        "variable2":"zhangsan",
        "variable3":{"name":"李四","gender":"男"},
    })
    result=template.render(data)
    return HttpResponse(result)

urls.py

服务器运行:


2.标签   {% %}

(1){% if %}

判断指定条件true,false ,通常判断一个变量是否存在或者为真

{% if %}标签需要{% endif %}标签进行闭合

{% if %}可以有{% else %}

视图文件 views.py

from django.http import HttpResponse
from django.template import Template,Context
def label_if(request,name):
    """
    if标签
    """
    template=Template(
        """
            {% if username %}
                <p>欢迎登陆&nbsp;{{username}}</p>
            {% else %}
                <a href="#">请登录</a>
            {% endif %}
        """
    )
    data=Context({
        "username":name,
    })
    result=template.render(data)
    return HttpResponse(result)

路由文件 urls.py


(2){% ifequal %}

判断两个量是否相等,通常用于比较

{% ifequal %}标签需要{% endifequal %}标签进行闭合

{% ifequal %}可以有{% else %}

视图文件 views.py

from django.http import HttpResponse
from django.template import Template, Context


def label_ifequal(request, name, gender):
    """
    ifequal标签
    """
    template = Template(
        """
            {% ifequal gender "M" %}
                <p>{{username}}先生,你好!</p>
            {% else %}
                <p>{{username}}女士,你好!</p>
            {% endifequal %}
        """
    )
    data = Context({
        "username": name,
        "gender": gender,
    })
    result = template.render(data)
    return HttpResponse(result)

路由文件 urls.py

re_path(r'label_ifequal/(?P<name>\w{1,4})/(?P<gender>[M,F])',label_ifequal),


(3){% for %}

{% for %}标签需要{% endfor %}标签进行闭合

{% for %}标签采用了和python一样的for in结构

{% for %}循环出来的不是html对象,只是数据

视图文件 views.py

from django.http import HttpResponse
from django.template import Template,Context
def label_for(request):
    """
    for标签
    """
    template=Template(
        """
            <table>
            <th>标题</th>
            <th>作者</th>
            <th>类型</th>
            <th>封面</th>
            {% for article in articles %}
                <tr>
                    <td>{{article.title}}</td>
                    <td>{{article.author}}</td>
                    <td>{{article.type}}</td>
                    <td><img  style='width:100px;height:100px;' src='{{article.picture}}'></td>
            
                </tr>
            {% endfor %}
            </table>
        
        """
    )
    data=Context({
        "articles":[
            {
                "title": "背影",
                "author": "朱自清",
                "type": "散文",
                "picture": "https://ss0.bdstatic.com/94oJfD_bAAcT8t7mm9GUKT-xh_/timg?image&quality=100&size=b4000_4000&sec=1553755201&di=e10ae2618dce21703114e119402a522e&src=http://img3.duitang.com/uploads/item/201507/05/20150705135641_K4sVA.jpeg"

            },
            {"title": "诛仙", "author": "萧鼎", "type": "小说",
             "picture": "https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=328549116,1379468112&fm=26&gp=0.jpg"},
            {"title": "西游记", "author": "吴承恩", "type": "小说",
             "picture": "https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=4100856954,312579948&fm=26&gp=0.jpg"},
            {"title": "鲁宾逊漂流记", "author": "丹尼尔·笛福", "type": "小说",
             "picture": "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1553750785199&di=d906d54cf8456736d285b99f601bb968&imgtype=jpg&src=http%3A%2F%2Fimg4.imgtn.bdimg.com%2Fit%2Fu%3D1665326279%2C2802541090%26fm%3D214%26gp%3D0.jpg"},
            {"title": "活着", "author": "余华", "type": "小说",
             "picture": "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1553750868172&di=ccae9a343204f59cecbcc21c9e811e58&imgtype=0&src=http%3A%2F%2Fs1.sinaimg.cn%2Flarge%2F001Pe7mxzy76VARpXvdc3"},
        ]

    })
    result=template.render(data)
    return HttpResponse(result)

路由文件 urls.py


在这讲一下{{forloop}}变量:

forloop是django模板语言定义好的一个变量,用来表示循环当中的每次循环

forloop为嵌套循环提供了parentloop参数来记录当前玄幻的上一层循环的情况

通常我们使用forloop标签进行循环的口头或者末尾判断

视图文件 views.py

from django.http import HttpResponse
from django.template import Template,Context
def label_forloop(request):
    """
    forloop 变量
    """
    template=Template(
        """
            <h3>单层循环</h3>
            <ul>
                {% for i in range %}
                    <p>{{forloop}}</p>
                {% endfor %}
            
            </ul>
            <h3>嵌套循环</h3>
            <ul>
            {% for i in range %}
                {% for article in articles %}
                    <li>{{article}}是第{{forloop.counter}}次循环,它的父循环是第{{forloop.parentloop.counter}}次循环</li>
                {% endfor %}
                {% if not forloop.last %}
                    <p>=================================</p>
                {% endif %}
            {% endfor %}
            </ul>
        """

    )
    data=Context({
        "articles":["背影","西游记","水浒传","三国演义","活着"],
        "range":["a","b","c"],
    })
    result=template.render(data)
    return HttpResponse(result)

路由文件 urls.py


3.过滤器  filter  {{   |   }}

对变量进行具体功能的处理

safe:去掉前端的转义

upper:大写

视图文件 views.py

from django.http import HttpResponse
from django.template import Template, Context


def filter(request, str):
    template = Template(
        """
            {{argv|safe}}
            <br>
            {{str|upper}}
        """
    )
    data = Context({
        "argv": "<img style='width:100px;height;100px;' src='http://cdn.duitang.com/uploads/item/201507/15/20150715122359_WmwTv.jpeg'>",
        "str": str,
    })
    result = template.render(data)
    return HttpResponse(result)

路由文件 urls.py

 

一文搞懂数据标注 数据标注即通过分类、画框、标注、注释等,对图片、语音、文本等数据进行处理,标记对象的特征,以作为机器学习基础素材的过程。简言之,就是需要给数据做好标注,这样机器就能知道学习哪些内容。 阅读详情

相关推荐

从NVLINK到EthLink:GPU互联技术演进全解析(含最新行业趋势)

本文深入解析了从NVLINK到EthLink的GPU互联技术演进,重点剖析了Scale-up与Scale-out两种核心范式。文章详细对比了NVLINK、UALINK及革命性的EthLink技术,后者创新性地将以太网改造为支持Load/Store与RDMA双语义的高性能互联网络,旨在打破封闭生态,实现高性能与开放性的统一。最后,文章提供了技术选型指南并展望了未来以以太网为主导、语义融合的行业趋势。

weixin_29204749的博客 179

django框架里面的{%%}与{{}}用法 template 模板指令

django框架里面的{%%}与{{}}用法 模版的常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}。 举个例子: {% for person in person_list %} <p>{{ person.name }}</p> {% endfor %} html 中 {% %} django ht...

abc 3411

Verilog基础知识11(异步FIFO为什么使用格雷码(gray-code) )

需求说明:Verilog设计 内容       :第一部分 异步FIFO为什么使用格雷码                   第二部分 格雷码在异步FIFO中的使用 来自       :时间的诗 第一部分 异步FIFO为什么使用格雷码 原文:http://www.cnblogs.com/kxk_kxk/p/3931591.html 异步FIFO通

时间的诗 8888

django框架里面的{%%}与{{}}用法

{% 逻辑代码 %} 有头有尾 {%for student in students%} ....... {% endfor %} {{变量代码}} 用来对模块变量的使用和模块过滤器的使用 <p>我是一个列表{{ list }}</p> ...

qq_44878715的博客 5817

在 ABAP 平台配置 OAuth 2.0 Client(OA2C_CONFIG):一份可落地的全景实践

本文详细介绍了在ABAP平台中配置OAuth 2.0客户端的完整流程。重点讲解了四种授权类型(Client Credentials、Authorization Code、SAML 2.0 Bearer Assertion、Resource Owner Password Credentials)的适用场景和配置要点,以及客户端认证的三种方式(Client Secret、Client Certificate、mTLS)。文章提供了操作步骤、排错建议和工程实践指导,包括端点配置、回调地址管理、scopes设置等关

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 356

【实战】YOLOv5/v8模型→RK3588 NPU高效部署:模型转换/量化/精度调优完整指南​

摘要: 本教程详细介绍了YOLOv5模型在RK3588 NPU上的优化部署流程,重点解析了架构转换与量化技术。通过将检测头输出结构与decode操作分离,显著提升了模型在NPU上的兼容性和计算效率。LetterBox预处理方案有效保持图像宽高比,相比直接resize提升检测精度。INT8量化技术采用非对称量化策略,通过scale和zero_point参数实现浮点到整数的转换,在保证精度的同时大幅提升推理速度。实验表明,优化后的模型在RK3588上实现了高效的实时目标检测性能,为边缘AI部署提供了完整解决方案

LXY_LOVE36的博客 625

Django模板

static文件的引入: 在页面上:{% load staticfiles %} link,script 的src中 :{% static 'xxx.css' %}, {% static 'xxx.js' %} django模板中与变量相关用 {{ }} ,与逻辑相关用 {% %} Django模板标签 if/else标签 基本语法如下 {% if condition %} ...

peppa_pig的博客 379

Cadence OrCAD Capture原理图中为功能模块分配ROOM的方法

本文详解介绍原理图设计阶段为原理图模块分配ROOM的方法。

fydar的博客 1346

django-template{{ }}和 {% %}

{{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}。 {%%}是成对使用,比如if和endif,for和endfor;且{%%}里的变量不需要再加{{}},可以直接用变量 比如: {% for row in o %} {% for key,value in row.items %} {% if key != ‘照片’ %} {{ key }}:{{ value }} {% elif key == ‘照片’ and value == ‘’ %} {{ key }}:{{ value }}

qq_33411994的博客 728

前后端面试题【目录】

工作时候扭螺丝,面试时候造火箭,现状就是如此。不管是背八股文,还是掌握了知识的精华,对答如流才是硬道理。本专栏就是要集具前端精华,规范、算法、架构、封装、原理等一并汇集,让前端的小伙伴有个思路。, 欢迎一起交流,并非常期望您能够提供有价值的学习资料。

大剑师兰特的GIS世界 1836

智能温室:温室环境监测_(7).土壤监测技术包括pH值和电导率

土壤的pH值是指土壤溶液的酸碱度,它对植物的营养吸收和生长发育有着重要的影响。在智能温室中,土壤监测是非常重要的一个环节,因为土壤的pH值和电导率直接影响植物的生长和健康。本节将详细介绍如何利用传感器和数据处理技术来监测土壤的pH值和电导率,并提供具体的代码示例。在智能温室中,监测到的土壤pH值和电导率数据需要传输到中央控制系统进行进一步的处理和分析。通过以上步骤,您可以构建一个完整的智能温室土壤监测系统,实时监控土壤的pH值和电导率,确保植物在最佳的生长环境中。校准通常包括在已知电导率的标准溶液中进行。

zhubeibei168的博客 1408

Django 模版(template)中 的 {{}} 和 {%%} 是什么作用

模版的常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}。

bigdaddy_maybe的博客 1万+

竞赛经验——挑战杯、互联网加、北斗杯、微软创新杯、计算机设计等比赛教训与经验

最近参加一些比赛,北斗杯、挑战者杯、微软创新杯等比赛,每次比赛都有不少需要总结的地方,特别是项目展示上技巧很多,总结一下。 首先最重要的是作品自身硬!自身的作品完成度不高,或者是没有创新点,就没必要参加了。 比如是出去比赛的话,我反正每次碰到最多的是智慧农场、智慧家居之类,不知道为啥这种的太多了。如果是创业型比赛,评委基本会问小米已经做得很好了很便宜了,你的优势在哪里?这些都是常见的问题提前要...

沉迷单车的追风少年 7329

Django模板语言DTL中的变量和标签

1、DTL的变量 模板中可以包含变量,Django在渲染模板的时候,可以传递变量对应的值过去进行替换。DTL语言将两个大括号对里的内容当作变量名。 变量的命名规范和Python非常类似,只能是阿拉伯数字和英文字符以及下划线的组合,不能出现标点符号等特殊字符。 变量需要通过视图函数渲染,视图函数在使用render或者render_to_string的时候可以传递一个context的参数,这个参数是...

sun9979的博客 1100

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Django系列教程(9)——模板语言、常用标签与过滤器

Django的模板是静态的html文件,它决定了一个页面的样式或外观。Django把视图(View)传递过来的数据与模板相结合动态地渲染出一个完整的html页面。这样做的好处是实现了数据和样式的分离。本章将介绍Django的模板语言, 常用模板标签及过滤器以及如何正确地配置模板和静态文件的存放路径。

彩蛋在每篇文章的最后名片 986

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Django-11-模板语言(Template常用标签)

csrf_token标签:{% csrf_token %} 查看请求,如截图,除了username和password参数外,还多了一个csrfmiddlewaretoken参数,当页面向Django服务器发送一个post请求时,服务器端要求客户端加上csrfmiddlewaretoken字段,所以在form表单post请求的时候需要加上此标签 url标签:{% url ‘...

karry_孙二的博客 208

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Django模板语言,标签整理

Django模板语言 标签 内置标签引用 1. autoescape 控制自动转义是否可用. 这种标签带有任何on或off作为参数的话,他将决定转义块内效果。 该标签会以一个endautoescape作为结束标签. 当自动转义生效时,所有变量内容会被转义成HTML输出(在所有过滤器生效后) 这等同与手动将escape筛选器应用于每个变量。 实例: 1) ...

weixin_30273931的博客 171

Django模板语言 标签整理

Django模板语言 标签内置标签引用1. autoescape控制自动转义是否可用. 这种标签带有任何on或off作为参数的话,他将决定转义块内效果。 该标签会以一个endautoescape作为结束标签.当自动转义生效时,所有变量内容会被转义成HTML输出(在所有过滤器生效后) 这等同与手动将escape筛选器应用于每个变量。实例:1)<!-- index.html文件 --&g...

weixin_30335575的博客 301

16-Django的模板语言(变量,标签,过滤器,继承,html转义)

模板语言 模板语言简称为DTL(Django Template Language) 模板变量 模板变量名由数字,字母,下划线和点组成,不能以下划线开头。 使用:{{模板变量名}} def index2(request): '''模板加载顺序''' return render(request, 'booktest/index2.html') # /temp_var def temp...

spec_yue 397

django-模板语言-verbatim标签-不使用DTL的解析

weixin_44737646的博客 444

jsp中写隐藏td标签_28. Django 2.1.7 模板语言 变量、标签、过滤器、自定义过滤器、模板注释...

参考文献https://docs.djangoproject.com/zh-hans/2.1/topics/templates/模板语言模板语言包括4种类型,分别是:变量标签过滤器注释 接下来逐个介绍4种类型。模板变量模板变量的作用是计算并输出,变量名必须由字母、数字、下划线(不能以下划线开头)和点组成。语法如下:{{变量}}现在来看看前面篇章中写到的模板遍历代码如下:{% for va...

weixin_39806288的博客 221

html语言可以写模版继承吗,Django框架模板语言实例小结【变量,标签,过滤器,继承,html转义】...

本文实例讲述了Django框架模板语言。分享给大家供大家参考,具体如下:模板语言模板语言简称为DTL(Django Template Language)模板变量模板变量名由数字,字母,下划线和点组成,不能以下划线开头。使用:{{模板变量名}}def index2(request):'''模板加载顺序'''return render(request, 'booktest/index2.html')#...

weixin_32836671的博客 109

django-模板语言- for...in..标签

for…in…的使用 格式 {% for 变量 in 容器 %} {% endfor %} 1.遍历列表 {% for 变量 in 列表 %} {{ 变量 }} {% endfor %} 反向遍历列表 {% for 变量 in 列表 reversed%} {{ 变量 }} {% endfor %} 遍历字典 # 遍历字典时,items values keys 等方法 {% for ...

weixin_44737646的博客 1206

python编程:Django常用的模板语言标签

1、模板继承 {% extends &amp;quot;base.html&amp;quot; %} 2、判断 {% firstof var1 var2 var3 %} 等价于 {% if var1 %} {{ var1 }} {% elif var2 %} {{ var2 }} {% elif var3 %} {{ var3 }} {% endif %} 3、循环 &amp;amp;lt;ul&amp;amp;gt...

彭世瑜的博客 2356

常用的Django模板语言

Django模板语言(Django Template Language, DTL)是Django框架中用于呈现HTML的方式。它具有一套丰富的标签和过滤器,帮助你在模板中动态渲染内容。

weixin_51368082的博客 1606

django-模板语言-url标签

url标签 在模板中,经常要写一些url 在a标签中,href属性url写死了 使用url标签灵活运用,后期修改url也不用修改a标签中的 比如: 写死的url 灵活的 url后面带参数时 如果带两个参数 就是使用空格分割开 <li><a href="{% url 'movie' movie_id=1 movie_c2=2 %}">电影</a></...

weixin_44737646的博客 929
上一篇: 用django输入生日,判断是一年中的第几天
下一篇: django当做独立的html模板系统
一个回和
博客等级 码龄8年 150粉丝 206原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值