Есть ли тег шаблона (или любой другой трюк), который я могу использовать для отображения всех переменных, доступных на странице?
Если DEBUG включен, есть тег шаблона под названием {% debug%}
Есть несколько вариантов (некоторые из них уже перечислены ранее):
Встроенный тег отладки django - я использую этот шаблон для его правильного отображения:
<pre> {% filter force_escape%} {% debug%} {% endfilter%} </pre>
Используйте теги приложения отладки шаблона django , такие как атрибуты, переменные и детали, или вы даже можете установить точку останова внутри шаблона, где вы можете проверить все с помощью отладчика pdb (или ipdb)
Панель инструментов отладки Django - для этой цели есть панель шаблонов
Обычно все функции отладки работают только тогда, когда приложение находится в режиме DEBUG .
Совет профессионала. Используйте textarea
и автоматический выбор onclick
для упрощения копирования и вставки:
<textarea onclick="this.focus();this.select()" style="width: 100%;"> {% filter force_escape %} {% debug %} {% endfilter %}</textarea>
Панель инструментов отладки делает все это и многое, многое другое. Смотрите скринкаст, чтобы узнать больше. Если вам буквально нужны переменные, вы можете попробовать
assert False, locals()
на ваш взгляд
Немного более сложное решение с лучшими вознаграждениями - загрузить панель инструментов django-debug (документация здесь )
Есть опция под названием «Шаблоны» с другой опцией «Переключить контекст», и вы можете видеть все переменные, переданные в ваш шаблон, а также возможность видеть код, стоящий за шаблоном.
источник
'<<triggers database query>>'
качестве значенияЕсли вы используете pycharm профессиональной версии, вы можете установить точки останова на некоторых строках в файле шаблона и просмотреть значение переменной.
Более подробно по этой ссылке. https://www.jetbrains.com/help/pycharm/debugging-django-templates.html
источник