调试web2py应用程序的不同方法

时间:2012-03-28 04:05:16

标签: debugging web2py

由于我是web2py的新手,我想知道调试web2py应用程序的方法有哪些。到目前为止,我遇到了以下情况:

  1. 在web2py应用程序中发生运行时错误时,会生成错误凭单,并且故障单中通常包含有用的信息。

  2. 但是,有时页面上只有一条普通的错误消息,例如“错误的请求”。而已。那么在这种情况下追踪出现问题的最佳方法是什么呢?日志记录?如果是这样,我们如何正确地做到这一点?

  3. 如果未显示明显的错误消息,但应用程序未按预期执行。通常,我使用带断点的调试器来检查它。还有其他建议吗?

  4. 非常欢迎任何经验/见解。

4 个答案:

答案 0 :(得分:3)

您可以通过添加单元测试来检测模型或控制器层的错误。这将有助于缩小调试工作范围,尤其是在错误故障单系统出现故障时。不幸的是,web2py文档并没有足够强调单元测试的重要性。您可以使用

在控制器上运行doctests
python web2py.py -T <application_name>

由于模型图层为每个控制器运行,因此您至少会在模型层中找到语法错​​误。

答案 1 :(得分:3)

最新版本有一个集成的调试器。您可以在代码上设置断点并逐步执行。

答案 2 :(得分:0)

其他建议很好。我还建议使用Wing IDE调试器。它不是很昂贵,并且通常适用于Python和web2py。

Wing具有远程调试功能 - 在您使用远程应用服务器进行生产式部署时非常有用。这种能力可以多次保存我的培根。

答案 3 :(得分:0)

正如@Derek指出的那样, integrated debugger用于web2py

您可以从集成的Web2py编辑器中设置一个断点(单击“切换断点”),或如上面的链接中所示手动设置它。

一旦达到断点,就可以打开http://localhost:8000/admin/debug/interact(如果在本地运行以评估该点的任何表达式。