Pregunta

Estoy tratando de mostrar el código fuente de Django desde una plantilla de Django. Sin embargo, no puedo encontrar una etiqueta similar a la pre o xmp de HTML.

Aquí está el código

Además, tengo un bloque con el mismo nombre que genera el error.

¿Fue útil?

Solución

Si su vista coloca el código fuente en una variable de contexto llamada fuente, su plantilla podría verse así:

<pre>
{{ source|escape }}
</pre>

El filtro escape escapará de ciertos caracteres para hacer asegúrese de que el HTML se representa correctamente.

Si solo desea mostrar el código fuente de la plantilla codificada en su plantilla, hay dos opciones.

Use HTML escaping para hacerlo y elimine sus etiquetas XMP.

&#123; instead of }
&#125; instead of {

O use la etiqueta de plantilla templatetag :

{% templatetag openbrace %} instead of }
{% templatetag closebrace %} instead of {

etc., consulte enlace

Otros consejos

Realmente no estoy seguro si entiendo: Si desea mostrar el código de la plantilla django, intente cambiar '{' y '}' a

&#123; and &#125;

Después de eso, django no lo reconocerá como var.

EDITAR: otra forma de decirle a django que no analice el código está aquí :) http://docs.djangoproject.com/en/dev/ref/templates/builtins/#templatetag

Django tiene una etiqueta de plantilla especial para esta propósito.

usar etiqueta de plantilla textual

{% verbatim %} 
...
{% endverbatim %}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top