如何在Django管理后台分页“更改列表”页面?

19 投票
4 回答
37760 浏览
提问于 2025-04-16 11:46

在我的 admin.py 文件中,Django 管理后台的所有项目都只显示在一个变更列表页面上:

admin.py

from cliente.models import Cliente
from django.contrib import admin

class ClienteAdmin(admin.ModelAdmin):
    list_display = ('nome','bairro','endereco','telefone')
    list_filter = ('bairro',)
    ordering = ('nome',)
    search_fields = ('endereco',)   
    pass

admin.site.register(Cliente,ClienteAdmin)

现在,我想把变更列表页面分页,这样每个变更列表页面上就能显示特定数量的项目。那么,我该怎么做呢?

4 个回答

4

这里我以每页显示10条记录为例,你可以根据自己的需要进行调整:

class CK_Sub_CategoryAdmin(admin.ModelAdmin):
   list_display=('Sub_Category_Name','Parent_Category_Name')
   search_fields=('Sub_Category_Name','Parent_Category_Name')
   list_filter=('Sub_Category_Name','SC_Published_Date')
   actions=[make_inactive,make_active]
   list_per_page=10 #record 10 per page
31

这里我以每页5条记录为例,你可以根据自己的需求进行调整:

class UserAdmin(admin.ModelAdmin):
    model = User
    list_per_page = 5 # No of records per page 
54

可以查看 ModelAdmin.list_per_page。默认情况下,这个值是 100,不过你可以把它设置成更小的数字。

撰写回答