1. アプリのurls.pyに以下を追記します。要領はListViewの設定時と同じです。パスを指定し、viewとしてこれから新しく作るclassを設定します。classの場合はファンクションと異なり、.as_view()を付けます。また、classが読み取れるように、インポート設定もします。
from django.urls import path from .views import Todolist, TodoDetail #TodDetailを追記 urlpatterns = [ path('list/', Todolist.as_view()), path('detail/', TodoDetail.as_view()) #追記 ]
2. アプリのviews.pyに、同じくListViewと同じ要領で設定します。
from django.shortcuts import render from django.views.generic import ListView, DetailView #DetailViewを追記 from .models import TodoModel class Todolist(ListView): tamplete_name = 'list.html' model = TodoModel class TodoDetail(DetailView): #追記 template_name = 'detail.html' model = TodoModel
3. templateフォルダに、detail.htmlのファイルを作成します。以下は個別のtitleとnoteを表示しています。itemはモデルの個別データを指します。ブラウザで表示する際は”detail/1″等、数字も併せて入力します(個別データのため)
{{ object.title }} {{ object.note }}