usar plantillas para examples descargar bootstrap python html django django-templates rendering

python - para - problema de escape en plantillas django



django templates examples (3)

Casi lo cubriste, esas son todas las formas de desactivar el autoescalado.

¿Estás seguro de que el valor del que hablas es en realidad s = ''<p>Hello!</p>'' ?

Mi presentimiento es que tienes un escape adicional en algún lugar de esa cadena ...

Digamos que tengo esta cadena:

s = ''<p>Hello!</p>''

Cuando paso esta variable a una plantilla, quiero que se muestre como html sin formato. Al mirar los documentos veo que puedo usar el filtro seguro:

{{s|safe}}

o desactivar el autoescape:

{%autoescape off} {{s}} {%endautoescape%}

o dentro del código python declararlo seguro:

from django.utils.safestring import mark_safe s = mark_safe(s)

Ninguna de estas opciones me funciona. Todo lo que hago, la cadena se muestra como:

<p>Hello!</p>

Debo extrañar algo, simplemente no podía entender qué. ¿Hay alguna configuración de seguridad en algún lugar que no permita escapar?

EDITAR: Bizarre, el problema parece desaparecer después de que reinicié la computadora.


Creo que deberías escribir de la siguiente manera

{{s|escape|safe}}

esta bien para mi


Mira el código fuente HTML, ¿se escapó? No lo creo. Debería estar imprimiendo letra por letra, así como esto:

< p > H E L L O < / >