Django 管理员将上下文添加到 index.html

Posted

技术标签:

【中文标题】Django 管理员将上下文添加到 index.html【英文标题】:Django admin add context to index.html 【发布时间】:2020-12-15 21:53:16 【问题描述】:

我正在尝试覆盖 Django 管理 index.html 以显示包含模型的最新 5 条记录的表

我设法在我的应用程序中使用以下内容覆盖了模板:

from django.contrib import admin

admin.site.index_template = 'admin/dashboard.html'
admin.autodiscover()

但我不知道如何将模型中的最新记录作为上下文添加到 index.html

希望有人可以帮助我

【问题讨论】:

【参考方案1】:
class CustomAdminSite(admin.AdminSite):

    def index(self, request, extra_context=None):
        extra_context = extra_context or 
        # Add your context here
        return super(CustomAdminSite, self).index(request, extra_context)

admin_site = CustomAdminSite()

不要忘记将默认的admin 替换为admin_site

【讨论】:

【参考方案2】:

对我添加额外上下文有用的东西是使用上下文处理器。在这里解释:https://***.com/a/34903331/13436391

Django documentation

【讨论】:

以上是关于Django 管理员将上下文添加到 index.html的主要内容,如果未能解决你的问题,请参考以下文章

Django 动态网址

Django 如何将自定义变量传递给上下文以在自定义管理模板中使用?

如何将标签添加到Django管理员字段

django_上下文管理器

如何将 CSS 按钮添加到 Django 管理员以实际触发逻辑

django - 将字段添加到用户配置文件管理表单