Django REST Framework(以降、DRF)の環境構築にてDjangoプロジェクトを作成しましたが、いきなり膨大な量のディレクトリ・ファイルができました。全ファイルを知っておかないといけないことはありませんが、「よく分からんけど動いてはる」のは気持ち悪いじゃないですか。ということでデフォルトの構成についてまとめてみました。
こんな感じになっているはずです。では、「1行解説」はじめます。
DjangoプロジェクトやDjangoアプリケーション以外のものをここではまとめています。
drf_sample/
(l.1):drf_virtual/
(l.2):drf_sample
作成時にデフォルトで生成されるものではありませんが、ルートディレクトリ内に作成することもできます。manage.py
(l.27):db.sqlite3
(l.28):sample_project/
(l.16):$ django-admin startproject
コマンドでDjangoプロジェクトディレクトリおよびその傘下のファイルを作成できます。自動で生成されるファイルは以下の通りです。__init__.py
(l.17):sample_project/
)がPythonのパッケージであることをPythonに認識させるためのファイルです。空のファイルで使用しません。__pycache__/
(l.18):ファイル名.cpython-39.pyc
という形式でこのディレクトリ内に生成されていきます。プログラムが変更されると書き換えられるもので、文字通りキャッシュなので(消しても問題ありませんが)残しておくと実行が速くなります。asgi.py
(l.23):settings.py
(l.24):urls.py
(l.25):wsgi.py
(l.26):sample_app/
(l.7):$ django-admin startapp
コマンドでDjangoアプリケーションディレクトリおよびそれにぶら下がるファイルを作成できます。アプリケーションではデータベース定義、Viewの作成等ができます。migrations/
(l.8):$ python3 manage.py makemigrations
を実行し生成されたマイグレーションファイルが保管されるディレクトリです。__init__.py
(l.10):sample_app/
)がPythonのパッケージであることをPythonに認識させるためのファイルです。空のファイルです。admin.py
(l.11):models.py
で作成したクラスをadminサイトに表示することができます。apps.py
(l.12):startapp
時に自動で生成されるため設定は不要です。models.py
(l.13):tests.py
(l.14):views.py
(l.15):ここまで、前記事で環境構築時に自動(+一部手動)で生成されたディレクトリおよびファイルについて、それぞれの役割を解説してきました。DRFの場合、この他にもSerializerというものが必要になるのですが、それは次の記事でまとめます。
よろしければこちらの記事も参考にしてみてください。
Loading...