首页 > 解决方案 > 如何向 Django Admin 添加自定义查询/查询集?

问题描述

我正在构建一个 Django 项目并有一个名为 Animal 的模型。就像是:

class Animal(models.Model):
    type = models.CharField()

在 django 管理界面中,我可以很容易地看到所有很棒的动物。

但是,我想向管理员添加 2 个额外的视图,以便我可以看到某种类型的所有动物:

例如,如果我的管理员视图可能如下所示:

Animals -> Shows all animals (default)
Animals (type = dog) -> Shows only dogs
Animals (type = cat) -> Shows only cats

关于如何做到这一点的任何建议或最佳实践?谢谢。查询本身将非常简单

Animals.objects.filter(type='dog')

标签: djangodjango-modelsdjango-admin

解决方案


我相信您正在寻找list_filterconfig 属性。

class AnimalAdmin(admin.ModelAdmin):
    list_filter = ('type', )

推荐阅读