1

在 Django 管理更改列表页面上呈现 list_filter 字段时是否有 raw_id_field 样式小部件可供使用?

当我将基于外键的字段添加到 Django modeladmin list_filter 时,Django 将关联表中的每一行呈现到选择框中的右侧面板中。如果该表很大(例如,如果它指向 User 表),这往往会显着减慢加载时间,因为 Django 会渲染数千行。即使在完成渲染之后,也很难在巨大的下拉列表中找到您的选择。

4

1 回答 1

1

没有,但在 Django 1.4 中,list_filter 系统得到了扩展,因此您可以编写自己的自定义过滤器。看

https://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.list_filter

例如,限制显示的用户数量是微不足道的。制作 raw_id_fields 样式的过滤器会稍微复杂一些——您只需要覆盖过滤器模板,而不是显示链接列表,而是显示一个表单并提交按钮。

于 2012-06-25T23:46:46.297 回答