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の設定やらにかなり時間がかかりました..