djangoでTemplateViewを使ってみる
djangoでTemplateView
以前は関数ベースで色々やっていたのですが世間はクラスベースと言う事なので、djangoで用意されている色々なクラスについて今後書いていけたらと思います。
今回は基本とされている「TemplateView」についてです。
名前の通りテンプレートの表示に特化した基本汎用Viewでトップ画面やヘルプ画面などの単純なテンプレートを表示するのによく利用されます。
config/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('app/', include('app.urls')),
]
app/urls.py
from django.urls import path
from . import views
app_name = 'app'
urlpatterns = [
path('', views.index, name='index'),
]
app/views.py
from django.shortcuts import render
from django.views import View
from django.views.generic import TemplateView
class IndexView(TemplateView):
template_name = 'app/index.html'
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['message'] = 'hello_index_page!!'
return context
index = IndexView.as_view()
templates/app/index.html
{{message}}
ディスカッション
コメント一覧
まだ、コメントがありません