{% spaceless %}标签

移除html标签中的空白字符,包括空格,换行键,tab键等。
首先创建一个测试环境,相信看到看到这里的都知道怎样创建一个测试环境了。这里就不细说了。
我们在html中写入一下代码:

<div><p><a>hahahahahhahah</a></p>
</div>{% spaceless %}
<div><p><a>hahahahahhahah</a></p>
</div>
{% endspaceless %}

然后我们查看效果

在按f12查看源码

我们发现网页上效果一样,但是添加了{% spaceless %}源码中没有了空格,换行这些空白字符了。这就是{% spaceless %}标签的作用。
在我们写html代码的时候就需要像没有添加{% spaceless %}那样写代码,方便我们查看,而当我们放在网页上去时,就可以用{% spaceless %}标签包裹住。这标签用的很少,看个人心情来使用吧。

{% autospace %}标签

我们在views中写入一个index的函数

from django.shortcuts import render# Create your views here.
def index(request):link = "<a href='https://www.baidu.com/'>百度</a>"return render(request,'auto.html',{'link':link})

然后在html中写入代码:

{{ link }}<a href="https://www.baidu.com/">百度</a>

查看效果

我们从views中返回的<a>标签和html中写的<a>标签一样,为什么html没有解析出views中返回的<a>标签呢?
这是因为Django中给我焖自动开启了自动转义功能,防止别人用一些脚本上传一些能破坏你代码结构的标签。从而使你的网页上多了一些你不想要的东西。
如果我们确定一些上传的代码是安全的,并且希望html帮我们解析出来,我们就需要关掉自动转义功能。
即需要用到{% autospace %}标签了
修改html中代码:

{% autoescape off %}{{ link }}  <br>
{% endautoescape %}
<a href="https://www.baidu.com/">百度</a>

这样我们就关掉了Django默认的转义,使html能解析我们传如的代码。

注意: 如果你不知道自己在干什么,最好不要关掉Django的自动转义,这样网站才不会出现XSS漏洞。

{% verbatim %}标签

在写项目的时候,有时候我们不想要DTL解析类似{{ value }}这样的变量,而是交给其他引擎来解析。
这个时候我们就需要用到{% verbatim %}标签了。
html中添加代码:

{% verbatim %}{{ value }}
{% endverbatim %}{{ value }}

我们查看网页效果

我们只看到一个{{ value }},这是因为没有使用{% verbatim %}标签中的 {{ value }}被DTL语言解析了,而我们又没有传递{{ value }}的值,所以是空白字符,而{% verbatim %}标签中的{{ value }}就不会被DTL语言解析,可以被其他引擎解析。

想了解更多的DTL标签使用使用详情,可以查看Django的官方文档

DTL语言学习(四){% spaceless %}、{% autospace %}和{% verbatim %}标签相关推荐

  1. SQL语言学习(四)常见函数学习

    调用过程: select 函数名(实参列表) from 表; 分类: 单行函数与分组函数 单行函数 单行函数可分为 一.字符函数 1.length()获取参数值的字节个数 SELECT LENGTH( ...

  2. uni-app学习(四):带有下划线的标签选择

    学了一周uni-app,写个小demo,试试水~ 效果图:点击不同场景,下划线切换相应标签下 简单整理了下实现过程,先创建视图容器含有三个标签,场景一,二,三 容器: <template> ...

  3. Oracle和sql语言,SQL语言的四种类型和ORACLE运算符

    数据定义语言(DDL) 数据操作语言(DML) 数据控制语言(DCL) 事务控制语言(TCL) Data Definition Language(DDL) DDL使我们有能力创建或删除表格.也可以定义 ...

  4. Ink脚本语言学习笔记(四)

    目前想要基于Ink脚本语言和Unity新的UIToolkit做一套对话系统,本文对Ink脚本语言的使用方式做一下介绍和总结 Ink脚本语言学习笔记(三) 四.进阶故事流控制(Advanced Flow ...

  5. AVI音视频封装格式学习(四)——linux系统C语言AVI格式音视频封装应用

    拖了很久的AVI音视频封装实例,花了一天时间终于调完了,兼容性不是太好,但作为参考学习使用应该没有问题.RIFF和AVI以及WAV格式,可以参考前面的一些文章.这里详细介绍将一个H264视频流和一个2 ...

  6. C++语言学习(十四)——C++类成员函数调用分析

    C++语言学习(十四)--C++类成员函数调用分析 一.C++成员函数 1.C++成员函数的编译 C++中的函数在编译时会根据命名空间.类.参数签名等信息进行重新命名,形成新的函数名.函数重命名的过程 ...

  7. 第四课 尚硅谷Scala语言学习-面向对象

    第四课 尚硅谷Scala语言学习-面向对象 文章目录 第四课 尚硅谷Scala语言学习-面向对象 第一节 Scala 包 1.1 包基本语法 1.2 包说明 1.3 包对象 1.4 导包说明 第二节 ...

  8. R语言学习笔记——高级篇:第十四章-主成分分析和因子分析

    R语言 R语言学习笔记--高级篇:第十四章-主成分分析和因子分析 文章目录 R语言 前言 一.R中的主成分和因子分析 二.主成分分析 2.1.判断主成分的个数 2.2.提取主成分 2.3.主成分旋转 ...

  9. C语言学习——从零开始学编程(第四篇:函数)

    目录 前言--小颖的话 一.函数的概念 二.C语言中函数的分类 1.库函数 1.自定义函数 1)函数名 2)函数返回值 3)函数参数 4)实现几个简单函数 三.函数的形参与实参 1.实际参数 2.形式 ...

  10. r语言 fourth entry_第四篇 语言学习的自然顺序

    1.语言学习的自然顺序: I" m3 b3 b, ]1 P4 @: r( B: [; {0 ?. @& f( T人们习得语言规则有一个可以预测的共同顺序,有的先习得,有的后习得.就某 ...

最新文章

  1. 【07月01日】A股滚动市净率PB历史新低排名
  2. vue使用element ui实现下拉列表分页的功能!!!
  3. es6学习 http://es6.ruanyifeng.com/
  4. 当当网回应李国庆“夺权”;小米:为常程不当言论道歉;Rust 1.43.0 发布 | 极客头条...
  5. 【动态规划笔记】状压dp:蓝桥 矩阵计数 (二进制枚举)
  6. Android--应用开发1(应用程序框架)
  7. 显卡 真假测试软件,Gpuinfo beta6 显示卡信息检测工具,主要改进 NV 假卡识别
  8. c语言大学生信息管理系统实验报告,c语言学生信息管理系统实训报告
  9. VS2015 无法打开包括文件string.h等
  10. Matlab实现图像识别(八)
  11. python字符串重复元素的删除_python删除列表重复元素
  12. HTML---网页编程(2)
  13. Java入门教程笔记07(面向对象基础)
  14. 将矩形图片绘制成圆形图片
  15. 不用再找懒人包了 | Windows安装苹果系统(dmg)原版
  16. 软件开发流程有哪些?完整的软件开发流程
  17. 产品经理——从一块钱看产品推广方案
  18. 微信开发:解决IOS端下面的点击延迟问题
  19. 路由交换技术实战七 FR 网络中配置 OSPF( 完成版 )
  20. 防火墙一个系统加固的例子

热门文章

  1. 【Flutter实战静态页面】--在线点餐app(1)顶端栏
  2. P5656 【模板】二元一次不定方程 (exgcd)(公约数)
  3. 桃李的修行小结【转】
  4. 贾扬清谈云原生 - 让数据湖加速迈入3.0时代
  5. 清华大学计算机相关夏令营,夏令营报名
  6. springboot打包错误:Failed to execute goal org.apache.maven.pluginsmaven-resources-plugin3.2.0
  7. 【List、Set】学习笔记
  8. FlinkSQL 读写 MySQL
  9. linux内核修改电流,为AM335x移植Linux内核主线代码(43)USB HUB和鼠标
  10. zookeeper leader和learner的数据同步