Help us understand the problem. What is going on with this article?

macでDjangoをVSCodeでデバッグ

More than 1 year has passed since last update.

はじめに

PythonのWEBフレームワークとして代表的なのはDjangoですが、最近は徐々に入門書が増えつつあり、加速度的にPythonユーザが増えているように思います。しかしその一方でVisual Studio Code(以下、VS Code)でDjangoをデバッグする方法をまとめた記事はあまり見かけません。そこで、今までの自分の知識と経験をまとめるべく投稿を致しました。私も初心者のため、間違っているところなどありましたら、コメントでご指摘頂ければ幸いです。

前提条件

使うマシンのOSはmacOS(High Sierra)を使うものとします。

1-1. Djangoの環境構築

まずはDjangoの環境構築を行います。Pipenvでパッケージ管理が可能なので、PipenvでDjangoをインストールします。

# 仮想環境のシェルに入ります。
$ pipenv shell

# Djangoをインストールします。
$ pipenv install django

1-2. VS Codeのインストール

VS Codeのダウンロードページで、下記画像矢印部分をクリックし、ダウンロードします。zipファイルがダウンロードされるので、解凍して開いてみましょう。
Visual_Studio_Code_-_Code_Editing__Redefined.jpg

そして、ファイルから、ワークスペースにフォルダを追加をクリックして、ご自分のDjangoプロジェクトを追加しましょう。こちらの画面の右下には、このファイルの種類には拡張機能'Python'が推奨されます。と表示があります。ここで、インストールをクリックします。
未設定__ワークスペース_.jpg

次に、以下のような画面になったら、デバッグモードに入るために赤枠部分をクリックします。未設定__ワークスペース_.jpg

そして、少々分かりづらいですが、以下の画面左上の部分をクリックします。Item-0_と_Item-0_と_Item-0_と_AppleTimeMachineExtra_と_Item-0_と_Item-0.jpg

すると、クリックした部分からメニューが出ます。設定(ワークスペースに追加したフォルダ名)の追加をクリックします。すると、今度は画面上の中央部分にまたメニューが出ます。こちらでは、Pythonをクリックして、以下のような画面になるのを確認したら、画面右下赤枠部分の構成の追加をクリックします。クリック後もメニューが出ます。ここでは、Python: Djangoをクリックします。その後は、この設定ファイル(launch.json)を保存します。⌘+sが手っ取り早いです。launch_json_—_未設定__ワークスペース__と_「macでPythonの環境構築_仮想環境作成_DjangoをVSCodeでデバッグ」を編集_-_Qiita.jpg

ここで、なにかファイルを開いてみます。views.pyファイルだとわかりやすいでしょう。ファイルを開くには、⌘+pで開けます。この状態で、以下のような画面になりますので、赤枠部分をクリックします。ここはなかなかシビアで、行番号のすぐ左です。該当箇所はうすく赤丸がつきます。これで、ブレークポイントを設定できますので、例えば8行目にブレークポイントを設定したければ、8行目のすぐ左をクリックすることになります。うまく設定できれば、薄い赤丸が、明るい赤丸になります。スクリーンショット_2018_09_01_18_05.jpg

この状態で、画面左上赤枠部分をクリックします。緑色の三角形です。なお、さきほど設定したブレークポイントが、画面左下赤枠部分に追加されていることを確認しておきます。views_py_—_未設定__ワークスペース__と_「macでPythonの環境構築_仮想環境作成_DjangoをVSCodeでデバッグ」を編集_-_Qiita.jpg

これでデバッグ状態に入ります。赤枠部分の変化がわかると思います。また、小さいですが、矢印部分の赤い点は、現在ストップしている部分(ブレークポイント)を示しています。スクリーンショット_2018_09_01_18_28.jpg

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away