Показать код Django из шаблона Django
-
07-07-2019 - |
Вопрос
Я пытаюсь отобразить исходный код Django из шаблона Django. Однако я не могу найти тег, похожий на HTML pre или xmp.
Вот код
Кроме того, у меня есть блок с тем же именем, который вызывает ошибку.
Решение
Если ваше представление помещает исходный код в переменную контекста с именем source, ваш шаблон может выглядеть следующим образом:
<pre>
{{ source|escape }}
</pre>
Фильтр escape экранирует определенные символы, чтобы сделать уверен, что HTML отображается правильно.
Если вы просто хотите отобразить исходный код шаблона в вашем шаблоне, есть два варианта.
Используйте для этого экранирование HTML и удалите теги XMP.
{ instead of }
} instead of {
Или используйте тег шаблона шаблона: р>
{% templatetag openbrace %} instead of }
{% templatetag closebrace %} instead of {
и т. д. см. ссылку
Другие советы
Я не совсем уверен, понимаю ли я: Если вы хотите показать код шаблона django, попробуйте изменить '{' и '}' на
{ and }
После этого django не распознает его как var.
РЕДАКТИРОВАТЬ: другой способ запретить django анализировать код здесь :) http://docs.djangoproject.com/en/dev/ref/templates/builtins/#templatetag
У Django есть специальный тег шаблона для этого цель.
использовать дословный тег шаблона
{% verbatim %}
...
{% endverbatim %}