我像文档中解释的那样设置admin.site.site_header = 'Fooo'
:
https://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.AdminSite.site_header
这对所有正常的管理页面都很好。
我有一个额外的(自定义(页面,我想看起来像管理页面。
我在模板中使用{% extends 'admin/base_site.html' %}
。
在此页面上,不会显示site_header"Fooo"。默认的django字符串是可见的。
我做错了什么?
在用户Alasdair的帮助下,我找到了这个解决方案:
由于我有几个视图需要这个上下文变量,我写了一个Mixin:
from django.contrib import admin
class PageMixin(object):
def get_context_data(self, **kwargs):
context = super(PageMixin, self).get_context_data(**kwargs)
context['site_header'] = admin.site.site_header
return context
PageMixin:的使用
class WebTestView(PageMixin, FormView):
....