自定义下拉菜单的外键

时间:2019-09-03 15:01:37

标签: django django-admin

Python 3.6; Django 2.2

在django-admin添加或更改对象表单中,我们具有ForeignKeys的下拉字段; 很好,但是当您尝试从该下拉列表中搜索输入时,我们必须非常快速地按动按键,以免丢失先前的输入;

例如具有:

class PC:
    .....
    location = models.ForeignKey('Locations', on_delete=models.PROTECT)

我们以添加/更改形式获得: enter image description here

在此下拉菜单中需要快速输入“ 1-9-07”(如果不快速,您将从每个字符的开头开始进行搜索)

所以问题是:

django-admin中有什么方法可以使此搜索延迟超过1秒,例如将其设置为在两次输入之间间隔5秒?

或者得到这样的东西:enter image description here

因此,在您不手动重置搜索输入之前,不会重置搜索输入。

(此示例并非来自django)

1 个答案:

答案 0 :(得分:1)

从django 2.0起,已经实现了功能; https://docs.djangoproject.com/en/2.0/ref/contrib/admin/#django.contrib.admin.ModelAdmin.autocomplete_fields

因此在admin.py中:

class PCAdmin(admin.ModelAdmin):
    ....
    autocomplete_fields = ['location']

class locationAdmin(admin.ModelAdmin):
    ....
    ordering = ['name']
    search_fields = ['name']