5

virtualenv内でPython 2.7.1でFlask 0.9を使用しており、アプリを次のように起動していますforeman start

私が作成した他のアプリでは、アプリに次の行を追加すると:

import pdb; pdb.set_trace()

次にブラウザー ウィンドウをリロードすると、ターミナル ウィンドウに pdb インタラクティブ デバッガーが表示されます。

(pdb)

しかし、私のアプリでは、これらの行を追加しても何も起こりません。ブラウザ ウィンドウがハングし、ロード中の一定の状態が表示されますが、コンソールには何も表示されません。

起こる必要がある魔法はありますか?

4

1 に答える 1

9

これは、標準出力をキャプチャする Foreman を使用しているためです。

でアプリをデバッグするには、または使用するものを使用pdbして、「手動で」実行する必要がありpython app.pyます。

別の方法として、Python プロセスをリモートでデバッグできるWinPDB (名前にもかかわらず、オペレーティング システムとは関係ありません) を使用することもできます。プログラムが別のサーバーで実行されている場合でも使用できます。

于 2013-03-31T04:33:19.180 に答える