django admin 的管理过滤器

use*_*623 4 python django django-admin django-admin-filters

Django admin 提供了非常基本的视图,用于在列表页面上应用过滤器,但我们有几个需要多选择、多搜索、范围过滤的用例。这些情况包括对相关字段和反向相关字段应用过滤

我们探索了几个包

但如果不摆弄基本模型管理,似乎没有一个能很好地适合我们的用例。

这些有替代品吗?如果创建自己的自定义过滤器,您如何处理此类用例?- 有什么想法/技巧/建议可以开始吗?

我确实在这里找到了一些搜索的想法 - https://medium.com/@hakibenita/how-to-add-a-text-filter-to-django-admin-5d1db93772d8

  • 对于要搜索的多个选项,计划使用逗号分隔值,然后在后端将其拆分
  • 对如何实现多选选择感到困惑

Yom*_*our 9

如果您的意思是要过滤布尔字段,请转到 admin.py 并添加list_filter到您的modelAdmin. 例如:

from django.contrib import admin

class YourModelAdmin(admin.ModelAdmin):
    list_filter = [
         "first_boolean_field",
         "second_bollean_field",
         "third_boolean_field"
    ]
    search_fields = (
        "field1",
        "field2",
    )

admin.site.register(YourModel, YourModelAdmin)
Run Code Online (Sandbox Code Playgroud)

list_filter将允许您多次按布尔字段进行过滤,并search_field允许您按元组中的字段进行搜索。