Djangodebugging显示页面的所有variables

有一个模板标签(或任何其他技巧),我可以用来显示页面中可用的所有variables?

如果启用了DEBUG ,则会有一个名为{%debug%}的模板标记

有几个选项(其中一些已经在之前列出):

  1. django内置debugging标记 – 我用这个样板正确显示它:

    <pre> {%filter force_escape%} {%debug%} {%endfilter%} </ pre>

  2. 使用django模板debugging应用程序的标签,如属性,variables和细节,或者你甚至可以设置一个模板内的断点 ,你可以用pdbdebugging器(或ipdb)

  3. Djangodebugging工具栏 – 有一个用于此目的的模板面板

通常,只有在应用程序处于DEBUG模式时,所有debuggingfunction才能工作。

debugging工具栏可以完成所有这些工作。 查看更多的屏幕录像 。 如果你真的只是想要variables,你可以试试

assert False, locals() 

在你看来

专家提示。 使用textarea和自动selectonclick更容易复制粘贴:

 <textarea onclick="this.focus();this.select()" style="width: 100%;"> {% filter force_escape %} {% debug %} {% endfilter %}</textarea> 

一个稍微复杂一点的解决scheme就是加载django-debug-toolbar ( 这里是文档)

有一个名为“模板”的选项,另外一个选项是“切换上下文”,您可以看到所有传递给模板的variables,以及能够看到模板背后的代码。

django-debug-toolbar模板调试的例子