You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Django admin的changelist_view中隐藏总数统计?

不修改模板隐藏Django Admin changelist总数的方法

不需要修改模板的话,有几种可行的方案:

方案1:注入自定义CSS隐藏元素

这是最简单的方式,通过Admin类的Media属性添加自定义CSS,直接隐藏显示总数的DOM元素。

  1. 在你的Django项目静态文件目录下创建CSS文件(比如static/css/hide_admin_total.css),添加以下样式:
/* 隐藏Django Admin changelist底部的总数文本 */
.change-list .paginator .quiet {
    display: none;
}

(注:如果你的Django版本样式类名不同,可以通过浏览器开发者工具查看对应元素的类名调整选择器)

  1. 在对应的ModelAdmin类中引入这个CSS:
from django.contrib import admin
from .models import YourModel

class YourModelAdmin(admin.ModelAdmin):
    # 其他配置...
    
    class Media:
        css = {
            'all': ('css/hide_admin_total.css',)
        }

admin.site.register(YourModel, YourModelAdmin)

方案2:重写changelist_view修改上下文

通过重写ModelAdmin的changelist_view方法,修改传递给模板的上下文数据,让总数相关的变量为空或不渲染。

示例代码:

from django.contrib import admin
from .models import YourModel

class YourModelAdmin(admin.ModelAdmin):
    # 其他配置...
    
    def changelist_view(self, request, extra_context=None):
        response = super().changelist_view(request, extra_context)
        # 获取ChangeList实例
        cl = response.context_data['cl']
        # 清空总数相关数据,让模板不渲染总数文本
        cl.full_result_count = None
        cl.result_count = None
        return response

admin.site.register(YourModel, YourModelAdmin)

(注:不同Django版本中,ChangeList的属性名可能有差异,比如部分版本用total_result_count,可以根据实际情况调整)

方案3:自定义ChangeList类

如果需要更彻底的控制,可以自定义ChangeList类,重写计算总数的方法:

from django.contrib import admin
from django.contrib.admin.views.main import ChangeList
from .models import YourModel

class NoTotalChangeList(ChangeList):
    def get_full_result_count(self):
        # 返回空值,让模板不显示总数
        return None

class YourModelAdmin(admin.ModelAdmin):
    # 其他配置...
    
    def get_changelist(self, request, **kwargs):
        return NoTotalChangeList

admin.site.register(YourModel, YourModelAdmin)

以上三种方法都不需要修改Django的原生模板,推荐优先使用方案1(CSS隐藏),实现简单且对原有逻辑无侵入。

内容的提问来源于stack exchange,提问作者Alvaro Guarda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 15:22:08