我像这样在我的 Django 管理页面中添加了一个过滤器下拉列表。
class MyAdmin(admin.ModelAdmin):
list_filter = ('status',)
默认情况下,如果您转到管理 View 中的模型,它会默认显示所有记录。 但我希望它过滤:
status="open"
默认显示。这是可以实现的吗?
最佳答案
我认为你需要的是 ModelAdmin.ordering https://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.ordering
如果你只需要 status='open' 你可以为你的 modeladmin 定义一个自定义的默认查询集 https://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.queryset 并限制了你的 仅列出状态为“打开”的项目。 (注意)但是在这种情况下,管理员将无法访问其他记录 (status!='open')。
关于python - 我如何告诉我的 ModelAdmin 的过滤器在默认情况下不显示所有记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6858060/