django中怎么输出html内容
导读:本文共886字符,通常情况下阅读需要3分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: data='<h2>helloworld</h2>'<p>{{data}}</p>我们目的是输出的是:helloworld但是结果输出的是:<h2>helloworld</h2>在网上搜了好久,终于找到解决办法:对于单个变量使用django的过滤器,告诉Django这个字符... ...
音频解说
目录
(为您整理了一些要点),点击可以直达。我们目的是输出的是:
但是结果输出的是:
在网上搜了好久,终于找到解决办法:
对于单个变量使用django的过滤器,告诉Django这个字符串不用进行HTML转义,方法如下:
对于一段模板内容可以使用autoescape标签,比如:
off 的意思是关闭对html的转义,而将off替换成on就表示进行html转义,默认进行html转义
注意:autoescape 具备继承性的,如果在父模版中定义了,则在子模版对应内容部分也存在此属性
我们可能会疑问,django为什么要将这些字符转义,而不是按原本html的内容输出呢?
我们举个例子:
需要用户输入用户名来注册,这个用户输入了用户名为:
假设他输入的长度合法,而且django也确实没显式提供什么特殊字符转换方法,那么每次在网页上面显示的时候,岂不是每次都弹出一个窗口,那么不是就很不安全啦。
本文:
django中怎么输出html内容的详细内容,希望对您有所帮助,信息来源于网络。