猫でもわかるWebプログラミング

試行錯誤しながらエンジニア(プログラマー)として働く猫のブログ。技術的な話や、働き方の話、読書録とか、試行錯誤している日常の話。

Djangoの「プロジェクト」と「アプリケーション」、INSTALLED_APPS【PythonでWebアプリ】

f:id:yoshiki_utakata:20200211004115p:plain

プロジェクトとアプリケーション

Django には「プロジェクト」と「アプリケーション」の概念があり、 一つのプロジェクトの中に複数のアプリケーションがあるという構造になっています。

前回作ったのはプロジェクトだったので、今回はその中にアプリケーションを作るところから始めます。

前回の記事を読んでない人はこちらを読んでください。

www.utakata.work

アプリケーションの作成

Dockerにログインしてアプリケーション作成のコマンドを叩きます。

# docker が起動していることを確認
$ docker-compose ps
       Name                      Command               State           Ports
-------------------------------------------------------------------------------------
invoice-cruiser-app   python manage.py runserver ...   Up      0.0.0.0:8000->8000/tcp

# 「アプリケーション」を作成
# 今回は「cruiser」というアプリケーションを作成します
root@684c5c3ebff5:/opt/app# python manage.py startapp cruiser

INSTALLED_APPへの追加(重要)

settings.py というファイルがあるかと思います。 僕の場合は、app という名前でプロジェクトを作成したので、 app/app/settings.py にあります。

ここに INSTELLED_APP という設定項目があるので、ここに先ほど作成したアプリケーションを追加します。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # ここより上は最初から追加されていたやつ
    
    # 今回は cruiser というアプリケーションを作成したので
    # cruiser を追加
    'cruiser'
]

忘れがちなので必ずやりましょう。やらないと次の Command とかが動きません。

今回の差分

参考