Python:将pdb与Flask应用程序一起使用

com*_*ted 5 python flask pdb

我在virtualenv中使用Flask 0.9和Python 2.7.1,然后启动我的应用程序 foreman start

在我将以下行添加到我的应用程序时构建的其他应用程序中:

import pdb; pdb.set_trace()
Run Code Online (Sandbox Code Playgroud)

然后重新加载浏览器窗口,我的终端窗口显示pdb交互式调试器:

(pdb)
Run Code Online (Sandbox Code Playgroud)

但是在我的应用程序中添加这些行时没有任何反应.浏览器窗口挂起并显示一个恒定的加载状态,但控制台中没有显示任何内容.

是否需要发生一些魔术?

Dav*_*ver 9

这是因为您正在使用Foreman,它捕获标准输出.

要使用调试您的应用程序pdb,您需要"手动"运行它,使用python app.py或使用任何您使用的.

或者,您可以使用WinPDB(尽管名称与操作系统无关),它可以让您远程调试Python进程.当程序在另一台服务器上运行时,您甚至可以使用它.