2

Pythonのシェルを使用して物事を探索できるので、私はPythonが本当に好きです。

djangoアプリの開発中に同じことを行うことは可能ですか?

つまり、次のことが可能ですか。

def process_request(request):
    ...
    if(request.FILES != none):
        __builtins__.debug_request = request
        showPythonShell();
    ...

だから私はリクエストを試すことができますか?

ありがとう

4

2 に答える 2

3

これは、Pythonデバッガーを使用して実行できます。pdb

または、タブ補完構文の強調表示、その他の機能ipdbを提供するさらに優れた機能です。IPython

if(request.FILES != none):
    import ipdb; ipdb.set_trace()

行に到達するとすぐに、要求を調べることができるデバッグシェルに移動します。使用可能なすべてのコマンドについては、pdbドキュメントを確認してください。

これがすべての詳細を説明する本当に良いブログ投稿です:http://aymanh.com/python-debugging-techniques

于 2012-06-22T07:02:02.343 に答える
3

インストールipythonして次のものに置き換えますshowPythonShell()

from IPython import embed; embed();

これはあなたが期待していることを正確に実行します。つまりipython、ifステートメント内からシェルを起動します。シェルを持つことの利点は、ここでipython確認したように、タブ補完、魔法の機能などです。私はかなり長い間Pythonで開発してきましたが、これは主にdjangoを含むあらゆるものをデバッグするために使用する方法です。

于 2012-06-22T07:02:34.963 に答える