そこで私はプログラミングを学び始めましたパイソン以降ジャンゴ最初は、トレースバックを見て、実際に何を間違えたのか、構文エラーはどこにあるのかを把握するのが大変でした。それからしばらく経ち、Django コードのデバッグのルーチンができたと思います。これはコーディング経験の早い段階で行ったことなので、座って、自分のやり方が非効率的で、もっと早くできるのではないかと考えました。通常は、コード内のバグを見つけて修正することができますが、もっと早く行うべきではないでしょうか?
私は通常、Django が有効になっているときに提供されるデバッグ情報を使用します。物事が思ったとおりになった場合は、構文エラーでコード フローを頻繁に中断し、フローのその時点で変数を調べて、コードが意図した以外のことを行っている場所を特定します。
しかし、これは改善できるでしょうか? Django コードをデバッグするための優れたツールやより良い方法はありますか?
ベストアンサー1
方法はいろいろありますが、最も簡単な方法は、Python デバッガーDjango ビュー関数に次の行を追加するだけです。
import pdb; pdb.set_trace()
または
breakpoint() #from Python3.7
ブラウザでそのページを読み込もうとすると、ブラウザがハングし、実際に実行されているコードのデバッグを続行するように求めるプロンプトが表示されます。
ただし、他のオプションもあります (推奨はしません)。
* return HttpResponse({variable to inspect})
* print {variable to inspect}
* raise Exception({variable to inspect})
しかし、Pythonデバッガ(pdb)はあらゆる種類のPythonコードに強く推奨されます。すでにpdbを使っている場合は、以下もご覧ください。IPDB使用するippython のデバッグ用。
pdbのさらに便利な拡張機能としては、
パブ、 によって提案されましたパット・デュジュール。
Django で Python デバッガーを使用する、 によって提案されましたシーファング。