DjangoをVSCodeにてデバッグする方法、やり方について解説【launch.json】

今回はDjangoをVSCodeで使う際のデバッグの方法について解説いたします。

一応初めから解説いたしますが、重要な点はlaunch.jsonの中身だと思いますので、それだけ知りたいという方はこちらまでスキップしてください。

スポンサーリンク
目次

VSCodeにPythonの拡張機能を追加する

1) まずはスタートメニューにて検索等を行ってVSCodeを立ち上げます。
立ち上げると以下のような画面になります。

2) 次にVSCodeにPythonの拡張機能をインストールします。
左側のナビゲーションウィンドウより一番下のテトリスみたいなマークをクリックします。

3) 拡張機能の検索フォームが開けたら検索ボックスよりpythonと入力し、拡張機能を検索します。

最上部に表示される[Python]の項目が確認出来たら緑色の[インストール]をクリックしてインストールします。
[インストール]の表示が[アンインストール]になったら、インストールされている状態となります。

これで拡張機能の準備はオッケーです。

Djangoの仮想環境を読み込む

それでは作成したDjango の仮想環境を読み込んでいきます。

Django の環境の作り方自体がわからないという方は以下の記事をご参照ください。

1) まずはフォルダーを開きます。VSCodeからデバッグ等を実施する場合はファイルを開くのではなく、フォルダーごと開く必要があることに注意してください

ここではお試しで最初に[mysite]というフォルダーを作ると思いますので、そちらを選択しております。

すると、VSCodeでDjangoファイルの中身が開かれるかと思いますので、ここから作業をします。

2) 作業フォルダーが開けましたら、環境の読み込みを表示させるために適当なPythonファイルを開きます。
すると画面下部の青いバーのところに右側か左側に現在読み込まれている環境が表示されます。

現在の読み込んでいる仮想環境をクリックすると、画面上部に[Select Interpreter]と表示されますので、djangoのライブラリをインストールしている仮想環境をクリックします。(ここではわかりやすく、djangoという名前の仮想環境にライブラリをインストールした想定で進めています。)

3) 右下の表示がdjangoをインストールした環境に切り替われば完了です。

launch.jsonを作成する

次にvscodeからDjangoをデバッグするために[launch.json]ファイルを作成します。

恐らく、Djangoのデバッグがうまくいかないんですけど!」っていう人たちはここの設定がうまくいっていない可能性が高いので、どんな設定にすればよいか参考にしてみてください。

それでは[launch.json]ファイル作成する手順を最初から確認します。

1) Djangoで作成したフォルダーを開いた状態で再生マークのところに虫がこびりついているボタンをクリックします。

3) すると画面の左側に[ To customie Run and Debug create a launch.json file.] という表記があると思いますので、[create a launch.json file] というところをクリックします。

4) [Debug Configuration]という項目が表示されると思いますので、そこから[Python File]を選択します。

クリックするとプロジェクト直下に[.vscode]というフォルダが生成されその中に[launch.json]ファイルが自動生成されていると思いますのでこちらを編集します。

5) [launch.json]ファイルの中身を以下の内容に書き換えます。

jsonファイルの中身

上記の内容は[Python: Current File]と[Python: Django]に分かれていますが、重要なのは後者の[Python: Django]です。前半の内容はなくてもいいとは思いますが、一応残してます。

また、各種項目の設定値については以下の通りです。

name : デバッグ実行時の名称
type : 使用するデバッガー
request : デバッグ時のモード
program : デバッグ対象のプログラムのパス
console : デバッグの結果を出力するコンソール
args : デバッグ実行時に渡される引数の内容
django : Djangoプロジェクトか否か

ここで環境に合わせて変更する必要があるのは “program” の内容です。
ここにはDjangoのコマンドをいろいろ管理している [manage.py]の場所を指定してあげます。
Djangoをコマンドプロンプトから起動する際 manage.py の場所まで行って “runserver” でDjango を起動すると思いますが、[launch.json]に上記の内容を記載してあげることで、デバッガーから “runserver” でDjangoを起動することができ、デバッグが可能になるというわけです。

要はデバッガー経由でDjangoのビルドインサーバーを動かしてあげてコードの実行をリッスンしようねという話です。

デバッグを実行する

それではデバッグの準備ができましたので、実際にデバッグを実行していきます。

1) 先ほどの再生ボタンのところに虫がこびりついているような模様のデバッグボタンをクリックします。
するとデバッガーを選択できるエリアが表示されると思いますので、Djangoように設定したデバッガーの構成を選択します。(この例では Python: Django になります)

2) デバッガーの選択ができたら、再生ボタンをクリックします。
するとVSCodeのターミナルに起動コマンドが流れると思いますので、「Starting development server at http://127.0.0.1:8000/」と表示されたらオッケーです。

3) 実際に画面を動かしてみると止まるのがわかるかと思います。

いかがでしたでしょうか。
Djangoでデバッグをしたい場合は[launch.json]の内容が特殊になるので、やり方がわからないという方も多いかとは思います。

上記の内容でDjangoでデバッグがうまくいかないという人の手助けになれば幸いです。

【Djangoのおすすめ参考書】

著:芝田 将
¥3,658 (2022/11/03 13:59時点 | Amazon調べ)
著:大橋亮太, 著:古田薫
¥2,860 (2022/11/03 14:01時点 | Amazon調べ)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

本業ではPHPを使ったWEBアプリやJavaを使用した基幹アプリを作成しております。Pythonは個人的に勉強しており、E資格を取ったりしたおかげで、業務でAIの研究とかも任されるようになりました。学習のアウトプットのために本サイトを運営しておりますが、これからPythonを学ぶという人のお役に立てればいいなと思います。わからないことや調査して記事にしてほしいことがございましたらご連絡いただけると幸いです。

コメント

コメントする

目次
閉じる