如何关闭Django模板的自动转义
博客专区 > KavenSu 的博客 > 博客详情
如何关闭Django模板的自动转义
KavenSu 发表于4年前
如何关闭Django模板的自动转义
  • 发表于 4年前
  • 阅读 131
  • 收藏 1
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

如何关闭Django模板的自动转义

Django的模板中会对HTML标签和JS等语法标签进行自动转义,原因显而易见,这样是为了安全。但是有的时候我们可能不希望这些HTML元素被转义,比如我们做一个内容管理系统,后台添加的文章中是经过修饰的,这些修饰可能是通过一个类似于FCKeditor编辑加注了HTML修饰符的文本,如果自动转义的话显示的就是保护HTML标签的源文件。为了在Django中关闭HTML的自动转义有两种方式,如果是一个单独的变量我们可以通过过滤器“|safe”的方式告诉Django这段代码是安全的不必转义。比如:

<p>这行代表会被自动转义</p>{{ data }}
<p>这行代表不会被自动转义</p>{{ data|safe }}

其中第二行我们关闭了Django的自动转义
我们还可以通过{%autoescape off%}的方式关闭整段代码的自动转义,比如下面这样:

{% autoescape off %}
    Hello {{ name }}
{% endautoescape %}

 


  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 6
博文 66
码字总数 16605
×
KavenSu
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: