从命令行调试Django

时间:2009-11-23 19:09:21

标签: django debugging

我正在从命令行调试Django。我正在使用django_extensions,我安装了IPython,理想情况下,我希望能够尽可能多地在shell中提取信息。我如何最有效地完成这项任务?

4 个答案:

答案 0 :(得分:2)

如果您安装了django_extensions,请使用

python manage.py shell_plus

自动预加载所有模型类。

答案 1 :(得分:2)

正如Geo manage.py shell提到的那样好,但是因为你已经安装了django_extensions,所以Carl对manage.py shell_plus的建议甚至更好......节省了大量的打字。

但是,作为第三个不太通用的建议,您可能还想查看django-viewtools。我个人倾向于使用shell_plus,但这可能很有用。

答案 2 :(得分:1)

怎么样:

python manage.py shell

更多信息here

答案 3 :(得分:1)

我最喜欢的解决django问题的方法是使用./manage runserver_plus命令django_extensions。它使用Werkzeug debuger,它在Web浏览器中为您提供了一个python shell。如果你想在代码中的任何地方使用shell,只需键入一些伪造的python,就像一个简单的a,并且在执行该代码时你将得到一个shell。

另一个不错的工具是ipdb ipython调试器。它与pdb相同但更好(并且使用ipython。使用此和runserver_plus,您可以插入import ipdb; ipdb.set_trace(),并且您将在与runserver_plus相同的窗口中获得带有调试器的ipython shell。 查看http://docs.python.org/library/pdb.html#debugger-commands以获取可在调试器中使用的命令列表。