对特定的Django模块运行Python调试器“单机版”?

2024-04-20 15:17:57 发布

您现在位置:Python中文网/ 问答频道 /正文

是否可以针对Django应用程序中的特定模块运行Python调试器,而无需运行Django Web服务器,然后从视图或模型中执行pdb?我在models.py文件中有一个MailManager类,其中包含一些发送电子邮件的方法。我想调试其中一个方法,而不必运行Django服务器,然后获取/发布调用该方法的视图。我试着执行'pdb myapp/models.py',它似乎执行了我模型文件中的第一个命令(恰好是'import logging'),但是如果我执行'dir(MailManager'),pdb告诉我它没有定义。是否可以按照我描述的方式调试这个模型类“standalone”中的方法


Tags: 模块文件django方法py模型服务器视图
1条回答
网友
1楼 · 发布于 2024-04-20 15:17:57

您可以使用python -m pdb module.py调试任何Python模块。它将向您显示第一行,然后您可以按n逐行通过程序

要执行Python语句,请使用ppp命令,如:p dir(MailManager)。必须定义MailManager,这意味着定义它的行必须已经执行

您应该查看PDB的文档以了解更多提示https://docs.python.org/3/library/pdb.html

您可能想看看Django的测试工具, 其中包括一个为您伪造服务器的测试客户端。 https://docs.djangoproject.com/en/1.8/topics/testing/tools/

相关问题 更多 >