Djangoにチャレンジしてみよう(3)
view関数とurlルーティング
view関数はリクエストを受け取り,レスポンスを返します.
試しに,以下のように記述しました.
/mysite/myapp/view.py
from django.shortcuts import render
def myapp_list(request):
context = {}
return render(request, 'myapp/myapp_list.html', context)
続いて,URLを設定してブラウザに表示できるようにします.
アプリケーションを作成した時点ではデフォルトで内側のmysite内にしかurls.pyは存在しないので,myapp内にもurls.pyというファイルを作成します.
/mysite/myapp/urls.py
from django.urls import path
from . import views
app_name = 'myapp'
urlpatterns = [
path('', views.myapp_list, name='myapp_list'),
]
mysite/mysite/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myapp.urls')),
]
また,mysite/mysite/settingsを以下のように編集しました.
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
以下省略
これによりtemplateディレクトリを置く場所を設定し,プロジェクト直下にtemplate/myapp各ディレクトリを作成します.
template/myapp/myapp_list.htmlに
<h1>Hello Django!</h1>と書き込みます.
するとブラウザ上にHello Django!と表示されました^^
今回urlの設定やらにかなり時間がかかりました..