脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python autoescape标签用法解析

Python autoescape标签用法解析

2020-04-17 10:10一笑而过~一笑奈何 Python

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

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

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

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

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

views.py中代码如下:

?
1
2
3
4
5
6
7
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中代码如下:

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

运行结果如下:

Python autoescape标签用法解析

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

Python autoescape标签用法解析

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/guyan-2020/p/12200543.html

延伸 · 阅读

精彩推荐