我正在学习django并且想把网站变成一个实用的网站,所以我就在这里。但是在html中遇到了<textarea>
标记的问题。
显然,我的网页上有<textarea>
,这是长文本的用户输入区域,我在数据库中存储给定输入,其中包含一些HTML标签,如<div>, <span>, <body>
作为网络艺术,以及何时它使用模板呈现自动应用,并且由于安全问题,所有标记(如<div>, <span>, <body>
)都显示为正常单词。
当我使用安全过滤器时,无法在网页上打印所有HTML标签,因为我无法在网页上打印<b>
或<em>
。
但我希望像<b></b>, <em></em>, <code></code>, <li></li>
这样的一些html标签可以根据用户的需要进行渲染,我的意思是当一位作家写一篇关于HTML的艺术作品时,他可以将<b></b>
写在他的艺术作为正常的单词中但是当他需要加粗一些单词,他也可以使用<b></b>
HTML标记。
答案 0 :(得分:0)
您可以使用django-html_sanitizer应用。将其添加到项目后,您可以使用它删除/转义所有标记,但您选择离开的标记除外。
模板中的示例用法:
{% strip_html your_text "em, b, code, li" %}