2010-11-20 49 views
2

我该如何调试我的django代码?django调试器

+0

是的,我试过,我实际上是在寻找一些东西,我可以评估不同变量的值,如果和错误发生。 – 2010-11-21 12:42:22

回答

5

一般情况下,我用django-debug-toolbar用于调试特定Django的东西。

pdb在使用runserver时适用于较低级别的shell调试。虽然我更喜欢使用的IPython(pip install ipdb,然后import ipdb; ipdb.set_trace(),就像你使用pdb

还有werkzeug,它在与django-extensionsrunserver_plus命令相结合,将让你打开错误页面基于Web的蟒蛇壳:

此项目需要安装Werkzeug WSGI utilities(版本0.3)。包含在Werkzeug中的是一个脚本调试器,它可以提供很好的调试回溯,并增加一个基于AJAX的调试器(它允许在回溯帧的上下文中执行代码)。另外它提供了一个很好的访问源代码的视图。

+1

django_toolbar。这非常重要。让您能够阅读会话数据,跟踪变量历史记录 - 模板继承,这是使用django时必须的! – Glycerine 2010-11-20 21:54:36

+0

是的,我安装了werkzeug,但似乎run_server plus不能与appengine一起使用。 – 2010-11-21 08:22:25

3

从JetBrains获取PyCharm。它有一个可爱的内置调试器和Django支持。

+0

但它不是免费的:( – 2010-11-20 21:11:39

+0

它很快就会付出代价我们在这里谈论的是100美元 – duffymo 2010-11-20 21:46:02

4

这有什么错内置Python调试?只是在你的代码要设置断点插入此:

import pdb; pdb.set_trace() 

和执行将停在那里,和控制台会显示一个提示调试使您可以检查变量和单步执行代码。

+0

和我应该在终端上看到调试提示符,我在哪里运行服务器?恢复服务器? – 2010-11-20 20:53:17

+1

Wooh?真的吗?我可以从哪里获得更多信息? – Glycerine 2010-11-20 21:01:46

+2

请参阅完整文档:http://docs.python.org/library/pdb.html#debugger-commands – 2010-11-20 21:11:17