Есть ли тег шаблона (или любой другой трюк), который я могу использовать для отображения всех переменных, доступных на странице?
Django debug отображает все переменные страницы
Ответ 1
Если DEBUG включен, там тег шаблона называется {% debug%}
Ответ 2
Существует несколько вариантов (некоторые из них уже перечислены ранее):
-
django builtin отладочный тег - я использую этот шаблон для его правильного отображения:
< предварительно > {% filter force_escape%} {% debug%} {% endfilter%} </предварительно >
-
Используйте теги приложения django template debug, такие как атрибуты, переменные и детали, или вы можете установить точку останова внутри шаблона, где вы можете проверить все с помощью pdb отладчик (или ipdb)
-
панель инструментов отладки Django - имеет панель шаблона для этой цели
Обычно все функции отладки работают только тогда, когда приложение находится в DEBUG.
Ответ 3
панель инструментов отладки делает все это и многое, многое другое. Подробнее см. screencast. Если вы буквально просто хотите переменные, вы можете попробовать
assert False, locals()
в вашем представлении
Ответ 4
Про совет. Используйте textarea
и автоматически выберите onclick
для упрощения копирования:
<textarea onclick="this.focus();this.select()" style="width: 100%;"> {% filter force_escape %} {% debug %} {% endfilter %}</textarea>
Ответ 5
Несколько более сложное решение с лучшими наградами - загрузить django-debug-toolbar (документация здесь)
Здесь есть опция "Шаблоны" с другим параметром "Переключить контекст", и вы можете увидеть все переменные, переданные в ваш шаблон, а также возможность видеть код за шаблоном.