我需要在views.py 中添加到TemplateView html {%extends some_base.html%} 的输出。我不能直接使用 html,因为 template_name 总是不同的,我不想将 {%extends..%} 添加到每个 template.html 文件中。我想做这样的事情:
class PageView(TemplateView):
def get_context_data(self, **kwargs):
object = PageModel.objects.get(view_base__slug=kwargs.get('slug'))
self.template_name = object.template_name
self.base='base.html'
from django.template.loader import render_to_string
#just example, it's not working
rendered = render_to_string(self.template_name)
rendered= '{% extends' + self.base + '%} '+ rendered
###
return locals()
但它不起作用。甚至更多 - 我想保存所有正在传递给模板的变量。