記事の最初の部分では、Django フレームワークでデバッグする際の基本的なテクニックをいくつか紹介しました。これらのテクニックは、問題を迅速に特定して解決するのに役立ちますが、場合によっては、より複雑な問題を解決するには、より高度なデバッグ スキルが必要になります。この記事では、Django アプリケーションの問題をより適切に解決できるように、いくつかの高度なデバッグ手法を引き続き検討していきます。
pdb は Python の標準デバッガーであり、Django フレームワークでも使用できます。 pdb を使用すると、プログラムの実行中にプログラムを停止し、変数の値と現在のスタック トレースを表示できます。 pdb を使用するには、ブレークポイントが必要なコードに次のコードを挿入するだけです。
import pdb; pdb.set_trace()
プログラムがこのブレークポイントまで実行されると、プログラムは停止し、pdb の対話型デバッグ モードに入ります。このモードでは、コマンドを使用して変数を表示したり、コードを実行したり、コードの特定の行をスキップしたりできます。
Django のデバッグ ツールバーは、リクエスト、応答、SQL クエリに関する情報をブラウザーに表示できる非常に便利なツールです。デバッグ ツールバーを有効にするには、次のコードを settings.py ファイルに追加します。
INSTALLED_APPS = [ # ... 'debug_toolbar', ] MIDDLEWARE = [ # ... 'debug_toolbar.middleware.DebugToolbarMiddleware', ]
さらに、開発環境では、次のコードを urls.py ファイルに追加する必要もあります。
if settings.DEBUG: import debug_toolbar urlpatterns = [ # ... path('__debug__/', include(debug_toolbar.urls)), ] + urlpatterns
デバッグを有効にする ツールバーがインストールされると、アプリをブラウザーで開いたときにページの上部に自動的に表示されます。これを使用して、リクエストとレスポンスのステータス、SQL クエリの数と実行時間などの情報を表示できます。
Django のログ モジュールは、コードにログを追加するために使用できる柔軟なログ ツールです。ロギングを使用すると、コードを変更せずにロギングの詳細度を増減できます。ログを使用するには、次のコードを追加するだけです:
import logging logger = logging.getLogger(__name__) logger.info('This is some information')
これにより、アプリケーションのログにメッセージが記録されます。情報、デバッグ、警告、エラーなど、さまざまなレベルのログを使用できます。ロガー オブジェクトを使用して、追加情報の追加、ログのフォーマットなどを行うこともできます。
Django のテスト ツールは、単体テスト、統合テスト、機能テストなどの作成と実行に使用できる強力なテスト フレームワークです。テストを作成するための単純な構文を提供し、テストの実行、テスト カバレッジ レポートの生成などに役立つツールをいくつか提供します。 Django のテスト ツールを使用するには、テスト コードを作成し、コマンド ラインで次のコマンドを実行するだけです。
python manage.py test
これにより、すべてのテスト ケースが実行され、テスト結果とテスト カバレッジ レポートが表示されます。テスト ケースをフィルターしたり、特定のテストのみを実行したりするオプションもあります。
結論
Django は、開発者がプログラム内の問題を迅速に見つけて解決できるように、さまざまなデバッグ ツールとテクニックを提供します。この記事では、pdb デバッグの使用、Django のデバッグ ツールバーの使用、ログの使用、Django のテスト ツールの使用など、高度なデバッグ スキルをいくつか紹介します。これらのヒントにより、複雑な問題をより効率的に解決し、アプリケーションの安定性と信頼性を高めることができます。
以上がDjango フレームワークでのデバッグのヒント (パート 2)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。