striptags
hace todos los esfuerzos posibles para despojar todos [X] etiquetas HTML.
Por ejemplo:
{{ myvar|striptags }}
Si mivar es <b>Joel</b> <button>is</button> a <span>slug</span>
, la salida será Joel is a slug
.
También puede usar strip_tags en su código python, es decir, en un formulario.
Por ejemplo, en un método limpio Forma:
class AddressForm(forms.ModelForm):
class Meta:
model = Address
def clean(self):
from django.utils.html import strip_tags
cleaned_data = super(AddressForm, self).clean()
cleaned_data['first_name'] = strip_tags(cleaned_data.get('first_name'))
return cleaned_data
Ver Django HTML Utils, también echa un vistazo a este sencillo Django HTML Sanitizer App.
¿Qué pasaría con las etiquetas de imagen ......? – Rajeev
quita todas las etiquetas y solo deja lo que se consideraría '' TextNode''s en DOM-speak. Por lo tanto, su imagen se eliminará sin dejar rastros. –
Sugiero usar '{{myvar | striptags | safe}}' para que las entidades HTML, como ' ', no sean escapadas por Django pero guardadas en código HTML y procesadas por el navegador web. Tenga en cuenta que el filtro 'striptags' en realidad elimina las etiquetas HTML, no las entidades. – Luca