Question

J'essaie d'afficher le code source Django à partir d'un modèle Django. Cependant, je ne trouve pas de balise semblable à celle de HTML ou de pré. Xmp.

Voici le code

De plus, j'ai un bloc du même nom qui génère l'erreur.

Était-ce utile?

La solution

Si votre vue place le code source dans une variable de contexte appelée source, votre modèle pourrait ressembler à ceci:

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

Le filtre d'échappement échappera certains caractères à créer. que le code HTML est correctement rendu.

Si vous souhaitez uniquement afficher une source de modèle codé en dur dans votre modèle, vous avez le choix entre deux options.

Utilisez l'échappement HTML pour le faire et supprimez vos balises XMP.

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

Ou utilisez le marqueur de modèle :

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

etc. se réfèrent au lien

Autres conseils

Je ne suis pas vraiment sûr de comprendre: Si vous souhaitez afficher le code du modèle Django, essayez de remplacer "{" et "}" par

.
&#123; and &#125;

Après cela, Django ne le reconnaîtra pas comme var.

EDIT: une autre façon de dire à Django de ne pas analyser le code est ici :) http://docs.djangoproject.com/en/dev/ref/templates/builtins/#templatetag

Django a un balise de modèle spécial pour cette balise. but.

utiliser une balise de modèle verbatim

{% verbatim %} 
...
{% endverbatim %}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top