Django restframeworkのプロジェクト環境構築について紹介していきます。
restframeworkを利用して、endpoint(api)を作成することができます。
1.Anaconda 仮想環境作成
Anacondaのインストールについては以下の記事で紹介しています。
Anacondaを立ち上げて、Environmentsから「Create」をクリックします。
Nameを適宜入力、またPythonのversionを選択します。
「Create」で仮想環境を作成できます。
作成した仮想環境から「Open Terminal」でターミナルを開きます。
2.pip install
Django のインストール
pip install django==3.1
※バージョンを適宜指定
Django restframeworkのインストール
pip install djangorestframework==3.11.1
CORSのインストール
(他endpintへのアクセスがあったとき、許可するURLを指定できます)
pip install django-cors-headers==3.4.0
simple JWT のインストール(JWT を利用する場合)
pip install djangorestframework-simplejwt==4.6.0
decouple(configで設定用)
pip install python-decouple
3.PyCharmの初期設定
PyCharmを利用して、プロジェクトの初期設定をしていきます。
PyCharmはIDEでcommunity版は無料で使用できます。
PyCharmからNew Projectを作るときに以下のような画面が表示されます。
Locationには、空のプロジェクトフォルダを選択します。
Anacondaで作成した仮想環境内にあるpython.exeを選択します。
(macならbin/python)
※パスはAnacondaをインストールしている場所によって異なるかと思います。
welcome scriptのcheckは外した状態で、「Create」をクリック。
4.プロジェクト作成
空のプロジェクトフォルダ内に移動して、以下のコマンドを実行します。
django-admin startproject rest_api .
※rest_apiの部分は任意で適宜名前を決める
rest_apiというフォルダとmanage.pyというファイルが作成されます。
django-admin startapp api
※apiの部分は任意に名前を決める。
apiのフォルダ内には、apps.pyやmodels.pyなどが生成されます。
django-admin startapp xxxxxx
のように別のフォルダを作成すると、apiを分けて管理することも可能。
複数のapiフォルダを作る場合、以下のようにsettings.pyを設定します。
作成された各フォルダのapps.py内に記載されているclass名を確認して、メインのsettings.pyのINSTALLED_APPS に追加すればOKです。
manage.pyを右クリックして、「Run ‘manage’」を選択します。
Edit Configurations が選択できるようになるので、「Edit Configurations」をクリックします。
parametersのところに「runserver」と入力。
「Apply」して「OK」をクリック。
再生ボタンのアイコンをクリック後、ローカルホストのURLが表示されます。
(ローカルサーバーを停止する場合は、赤のアイコンから可能)
以降、再生と停止をPyCharm上のボタンからできるようになりました。
ターミナルからコマンドで実行する場合は、以下でのように実行。
python manage.py runserver
ブラウザでDjangoのテンプレートが表示されれば、初期構築はOK。
5.superuserの作成
superuserを作ると、ブラウザ上で作成したapiに対してgetやpost等をすることができます。
以下のコマンドを実行します。
python manage.py migrate
Djangoがデフォルトで用意しているmigrations(テーブル)がSQLite3(DB)に作成されます。
python manage.py createsuperuser
Email addressは無視して、enterでもOKです。
新しくmodelsを作成した場合は、makemigrationsでmigrationsファイルを作成して、migrateでテーブルをDBに反映する流れとなります。
models作成(models.py)
↓
python manage.py makemigrations
↓
python manage.py migrate
localhostに再度アクセスすると以下のようになります。
2.api/ については、別記事で触れたいと思います。
/adminでアクセスします。
http://127.0.0.1:8000/admin
作成したusernameとpasswordを入力してloginします。
login後、admin用のdashboardが表示されます。