我有一个基于函数的视图,其中包含函数:
def foo(request, id):
args = {...}
return render(request, 'template_name.html', args)
我想将其转换为基于类的代码。请告诉我:
TemplateView
)?render()
)?基本上,问题是:上面的代码应该如何使用基于类的方法?
答案 0 :(得分:2)
您需要使用TemplateView
并覆盖get_context_data()
方法:
class MyView(generic.TemplateView):
template_name = 'template_name.html'
def get_context_data(self, **kwargs):
context = super(MyView, self).get_context_data(**kwargs)
context.update({'key1': 'value1'})
return context
另请参阅:Adding extra context。