django admin - 显示超过200个项目的所有内容

时间:2011-01-04 11:27:38

标签: django

我目前在django admin中有一个分为8页的列表。

我需要做的是在django admin中显示列表中所有项目的按钮/链接,即使在保持分页的情况下有超过200个项目。

“全部显示”链接完全符合我的需要但限制为200项。有什么方法可以改变吗? (不修改核心)。还有一种方法可以根据需要更改modeladmin中的list_per_page吗?

3 个答案:

答案 0 :(得分:15)

您可以更改管理类的list_max_show_alllist_per_page属性。

class FooAdmin(admin.ModelAdmin):
    list_max_show_all = 500
    list_per_page = 200

适用于Django 1.4及更高版本。 See the manual.

答案 1 :(得分:4)

这很有效:http://djangosnippets.org/snippets/1809/ 我把它放在settings.py

答案 2 :(得分:-1)

当您说list_per_page的“按需”修改时,不确定它是您正在寻找的,但您几乎可以肯定地查询数据库。这是相当笨拙的,但根据您的使用情况,管理员可以登录,修改他们的偏好,然后进入任何实际重要的模型。 例如:

#models.py
class PageLength(models.Model):
     page_length = models.IntegerField()

#admin.py

class FooAdmin(admin.ModelAdmin):
     list_per_page = PageLength.objects.get(pk=1)