在 Django-admin 中,如何添加过滤器或搜索外键 select 框?

In Django-admin, how to add filter or search for foreign key select box?

我得到了一个 foreign key 模型,大约有 100,000 个日期。

想要的数据select太难了。所以想知道有没有人性化的方式在django admin中添加foreign key.

我试过raw_id_fields,没用

this 不工作。

Select2 对付这种情况非常得心应手。您可以检查 Select2 与 Django 集成的包。

django-select2 and django-easy-select2 两者都是不错的选择。

如果您在源管理员 class 上设置了 raw_id_fields,则可以在目标管理员模型上设置 search_fields,以便能够根据设置过滤结果search_fields,即您将在 select 列表弹出窗口中获得一个搜索输入字段,请参见下图。

或者,django-2.0 刚刚合并了一个 pull request,为在 django admin 中使用 select2 小部件提供支持,请参阅 pull request 以获取受支持字段的完整列表:https://github.com/django/django/pull/6385

有了这个,您可以在源管理员 foreignkey 字段上使用 autocomplete_fields class 并像以前一样在目标管理员 [=29] 上设置 search_fields =].