Python autoescape标签用法解析

yipeiwu_com6年前Python基础

这篇文章主要介绍了Python autoescape标签用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1.spaceless标签:移除html标签中的空白字符。包括空格、tab键、换行符,示例代码如下:
{% spaceless %}具体内容{% endspaceless %}

2.autoescape标签:DTL模板中默认已经开启了自动转义,会将那些特殊字符串进行转义,比如会将“<”转义成<会将“>”转移成“>”,使用DTL的自动转义,可以使网站不容易出现XSS漏洞。

如果变量是可信任的,那么可以使用“autoescape”标签来关掉 自动转义,示例代码如下:

views.py中代码如下:

from django.shortcuts import render
def index(request):
  # 定义一个上下文
  context = {
    "info":"<a href='https://wwww.baidu.com'>百度</a>"
  }
  return render(request,'index01.html',context=context)

index01.html中代码如下:

<body>
<!--此时关掉了DTL模板中的自动转义功能-->
  {% autoescape off %}
    {{ info }}
  {% endautoescape %}
</body>

运行结果如下:


查看不关掉DTL自动转义功能时,运行结果如下:

如果想要查看特殊字符被转义为什么了,就可以通过查看网页源码进行查看。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中logging实例讲解

Python中logging实例讲解

logging 的基本用法网上很多,这里就不介绍了。在引入正文之前,先来看一个需求: 假设需要将某功能封装成类库供他人使用,如何处理类库中的日志? 数年前在一个 C# 开发的项目中,我用...

Python 的AES加密与解密实现

高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代...

python3使用PyMysql连接mysql数据库实例

python语言的3.x完全不向前兼容,导致我们在python2.x中可以正常使用的库,到了python3就用不了了.比如说mysqldb 目前MySQLdb并不支持python3.x...

详解DeBug Python神级工具PySnooper

PySnooper 在 GitHub 上自嘲是一个“乞丐版”调试工具(poor man's debugger)。 一般情况下,在编写 Python 代码时,如果想弄清楚为什么 Pytho...

详解Python logging调用Logger.info方法的处理过程

详解Python logging调用Logger.info方法的处理过程

本次分析一下Logger.info的流程 1. Logger.info源码: def info(self, msg, *args, **kwargs): """ Log...