【发布时间】:2010-10-27 04:22:47
【问题描述】:
从字符串中删除所有 html/javascript 的最简单方法是什么?
【问题讨论】:
从字符串中删除所有 html/javascript 的最简单方法是什么?
【问题讨论】:
Django 提供了一个实用函数来删除 HTML 标签:
from django.utils.html import strip_tags
my_string = '<div>Hello, world</div>'
my_string = strip_tags(my_string)
print(my_string)
# Result will be "Hello, world" without the <div> elements
这个函数在旧的 Django 版本(1.7 之前)上曾经是不安全的,但现在使用它完全安全。 Here is 一篇文章在相关问题时对其进行了评论。
【讨论】:
striptags 模板过滤器。
{{ value|striptags }}
【讨论】:
Django 3
{{ the_value | striptags | safe | escape }}
【讨论】:
striptags 上的文档明确表示“永远不要将安全过滤器应用于 striptags 输出”,但随后您调用 escape... 这应该只是 {{ the_value|striptags }}。跨度>
|safe 的输出上调用 |escape,它不会做任何事情。