Jak usunąć html / javascript z wprowadzania tekstu w django

83

Jaki jest najłatwiejszy sposób usunięcia całego html / javascript z ciągu znaków?

Eldila
źródło

Odpowiedzi:

172

Django udostępnia funkcję narzędzia do usuwania tagów 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

Ta funkcja była niegdyś niebezpieczna w starszej wersji Django (przed 1.7), ale obecnie jest całkowicie bezpieczna w użyciu. Oto artykuł, w którym omówiono tę kwestię, gdy była istotna.

Eldila
źródło
Element strip_tags nie usuwa jednostek html.
Pavan Kumar TS
Więc to tylko usuwa same tagi. A co z rzeczywistą treścią?
Kevin Parker
50

W striptags szablon filtr.

{{ value|striptags }}
Ayman Hourieh
źródło
0

Django 3

{{ the_value | striptags | safe | escape }}
Ahmed Shehab
źródło