Python中autoescape标签使用详解,,1.spaceles


1.spaceless标签:移除html标签中的空白字符。包括空格、tab键、换行符,示例代码如下:

{% spaceless %}具体内容{% endspaceless %}

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

如果变量是可信任的,那么可以使用“autoescape”标签来关掉 自动转义,示例代码如下:
views.py中代码如下:
from django.shortcuts import renderdef 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中autoescape标签使用详解

评论关闭