[ Django-TemplateView类 ]


源码TemplateView

class TemplateView(TemplateResponseMixin, ContextMixin, View):
    """
    Render a template. Pass keyword arguments from the URLconf to the context.
    """

    def get(self, request, *args, **kwargs):
        context = self.get_context_data(**kwargs)
        return self.render_to_response(context)

视图

from django.shortcuts import render
from django.views.generic import TemplateView
# Create your views here.


class TemplateTestView(TemplateView):
    template_name = 'test_template.tpl'
    extra_context = {'name': '陈海峰哈哈哈哈'}  # 可以修改kwargs

    # 默认只有get方法
    def get(self, request, *args, **kwargs):
        return super().get(request, *args, **kwargs)

    # 重写上下文内容
    def get_context_data(self, **kwargs):
        content = super().get_context_data(**kwargs)
        return content