我的客户端模型具有国家/地区模型的外键字段。
所以在Django admin中,当我创建一个客户端时,我选择了这个客户端所属的国家。但问题是选择列表太长(这个星球上的国家太多)。有时候我需要的时间太长了。
所以我想知道djano admin中是否有其他小部件提供了一个select-input-combo小部件。 当我输入输入时,它将过滤掉正确的输入供我选择。
希望你能理解我需要的东西。
答案 0 :(得分:3)
你会在admin.py中做类似的事情:
class ClientAdmin(admin.ModelAdmin):
raw_id_fields = ("country",)
admin.site.register(Client, ClientAdmin)
然后选择小部件将变成类似:
答案 1 :(得分:0)
自Django 2.0起,就有autocomplete_fields
。来自documentation:
autocomplete_fields是要更改为Select2自动完成输入的ForeignKey和/或ManyToManyField字段的列表。
和
Select2输入看起来与默认输入类似,但是具有搜索功能,该功能异步加载选项。如果相关模型有很多实例,则这将更快,更友好。
请注意,由于小部件使用了search_fields
,因此需要在相关对象的ModelAdmin中对其进行定义。