我可以通过以下方式将变量传递给管理索引页面中的模板:
class MyAdminSite(AdminSite):
def index(self, request, extra_context=None):
extra_context = extra_context or {}
extra_context['Sched_today'] = date.today()
return super(MyAdminSite, self).index(request, extra_context=extra_context)
但是我如何将变量传递给管理员用户和组的模板(changelist_view、change_view、add_view)
请您参考如下方法:
您可以覆盖add_view、change_view 和changelist_view model admin methods .
from django.contrib.auth.admin import UserAdmin
class MyUserAdmin(UserAdmin):
def add_view(self, request, form_url='', extra_context=None)
extra_context = extra_context or {}
extra_context['Sched_today'] = date.today()
return super(MyUserAdmin, self).add_view(request, form_url, extra_context)
UserAdmin 的子类很重要,否则您将遇到密码问题。请记住先注销 User 模型,然后再注册您自己的模型管理员。
admin.site.unregister(User)
admin.site.register(User, MyUserAdmin)
