アプリケーション作成
Djangoのプロジェクト作成が完了したら、次にアプリケーションを作成して行く。
(プロジェクトの作成方法はこちらを参照ください。)
アプリケーションは1つのプロジェクトに対して複数作成することもできる。
Example
- アプリケーションを作成するには、python manage.py startapp アプリケーション名を実行する
- 実行すると以下のようにアプリケーション名のディレクトリが作られて、中にファイルが作成される
アプリケーションを読み込む設定をsettings.pyに記述
アプリケーションが作成したら、プロジェクトを起動して、アプリケーションを読み込める設定をプロジェクトフォルダ内のsettings.pyに記述する
Example
- プロジェクト内のsettings.pyのINSTALLED_APP内にアプリケーション名を記述する
- アプリケーションのviews.pyにリクエストを受け取った際の挙動を定義する
views.py
from django.http import HttpResponse
def index(request):
# ページを開いたときに呼び出される。requestにはクライアントからの送られる値が入る
return HttpResponse("Hello World") #レスポンスとしてHello Worldを返す。
- どのurlを選択すれば、アプリケーションにアクセスするかURLマッピングする(プロジェクトのurls.pyに記載する)
urls.py
from django.urls import path
from Sirstapp import views
# Sampleappのviews.pyをインポートする
urlpatterns = [
path('admin/', admin.site.urls),
path('sampleapp/', views.index)
#/sampleappにアクセスするとviews.pyのindexが呼び出されるようにurlpatternに定義する
]
settings.pyとアプリケーションの設定を記述したら、Djangoプロジェクトを立ち上げる
これまで、startappでアプリケーションのフォルダを自動生成して、views.pyに画面の定義、urls.pyにURLマッピングを記載した。
ここからは、作成したアプリケーションを立ち上げてどのように表示されるのかを記載したい。
Example
- プロジェクト内のsettings.pyのINSTALLED_APP内にアプリケーション名を記述する
- python manage.py runserverを実行するとDjangoのアプリケーションが立ち上がる
- http://127.0.0.1:8000/sampleappにアクセスすると、以下のようなページが表示されると成功
アプリケーション作成時(python manage.py startapp)に自動生成される各ファイルの意味
アプリケーションを作成すると以下のフォルダ・ファイルが作成される。ここでは、それぞれどういう意味を持っているのか記載する
admin.py |
|
apps.py |
|
__init__.py |
|
models.py |
|
tests.py |
|
views.py |
|
migrations |
|