Djangoでhelloアプリケーションを作る
アプリケーションを作る
プロジェクト名をdjango_app
とした前提で進める。プロジェクトルートがdjango_app
というDIR名。
プロジェクトルートにてpython manage.py startapp アプリケーション名
でアプリケーションを作る。
$ cd ~/MyProject/django_app/ $ python manage.py startapp hello $ ls db.sqlite3 django_app/ hello/ manage.py*
hello
アプリケーションのDIRが作られている。
$ tree -L 2 hello/ hello/ ├── __init__.py ├── admin.py ├── apps.py ├── migrations │ └── __init__.py ├── models.py ├── tests.py └── views.py
migrations
: マイグレーションフォルダ(データベース関係の機能ファイル)
__init__.py
: アプリケーションの初期化処理
admin.py
: 管理者ツール
apps.py
: アプリケーション本体
models.py
: モデルに関する処理
views.py
: 画面処理
tests.py
: プログラムテスト
views.py
を書き換える
views.py
のデフォルトの状態
from django.shortcuts import render # Create your views here.
これを次のように書き換える
from django.shortcuts import render from django.http import HttpResponse # Create your views here. def index(request): return HttpResponse("Hello Django!!")
urls.py
を編集する
プロジェクトルート以下のプロジェクト名と同じDIRの中に、URLを管理するurls.py
というファイルがある。次にこれを編集する。
urls.py
に、hello/views.py
に書いたindex関数
の処理を特定のURLと結びつける処理を書いておくことで、アプリケーションが実行される。この特定のURLと特定の処理を紐付ける記述をurlpatterns
という。
urls.py
のデフォルト状態は次のようになっている。
from django.contrib import admin from django.urls import path urlpatterns = [ path('admin/', admin.site.urls), ]
次のように編集する。
from django.contrib import admin from django.urls import path import hello.views as hello urlpatterns = [ path('admin/', admin.site.urls), path('hello/', hello.index), ]
hello/views.py
を表すhello.views
をhello
という名前でimport
し、urlpatterns
のpath関数
に追加する。
path関数
の構文
path("紐付けるURL","呼び出す処理")
コンソールからpython manage.py runserver
として、http://localhost:8000/hello/
にアクセスすればindex関数
に渡された"Hello Django!!"の文字列が表示される。
開発用サーバはずっと起ち上げておいてもOK。プログラムを変更すれば即反映される。