Администратор Django: Изменить выбранное поле связанных полей на автозаполнение

У нас есть некоторые модели, которые имеют внешний ключ пользователя. Но, имея в нашей системе около 25000 пользователей, найти того, кто нам нужен, немного сложно.

Есть ли решение, которое лучше, чем поле выбора? Может быть автозаполнение, чтобы мы могли начать вводить имя пользователя / адрес? Или просто окно поиска? При переключении связанного пользователя для этих объектов становится все труднее с 25000 несортированных пользователей.

Было бы полезно даже установить его для сортировки пользователей по имени пользователя.

 Paolo28 янв. 2013 г., 00:01
Это кажется горячим:github.com/yourlabs/django-autocomplete-light

Ответы на вопрос(5)

ModelAdmin«sraw_id_fields - тогда вы получите всплывающее окно, в котором вы можете использовать встроенные элементы управления поиском / фильтрацией и разбиением на страницы, чтобы найти и выбрать нужный объект.

Если вы действительно хотите автозаполнение, другие ответы дают вам разумную отправную точку.

Администратор Django 2.0 имеетавтозаполнение встроеноПросто установитеautocomplete_fields поле наModelAdmin класс. например

class QuestionAdmin(admin.ModelAdmin):
    ordering = ['date_created']
    search_fields = ['question_text']

class ChoiceAdmin(admin.ModelAdmin):
    autocomplete_fields = ['question']
 gregory01 нояб. 2018 г., 01:03
кратко объяснил наглядным примером, спасибо!
 alj20 февр. 2019 г., 14:19
Мне было интересно, знает ли кто-нибудь, доступно ли пользователю автозаполнение администратора в наших собственных представлениях, если код уже встроен в Django 2. Если нет, то что люди используют.

Для этого есть приложение (Джанго-автополный).

Решение Вопроса

и я решил использовать вместо этого поле автозаполнения. Это работает довольно хорошо в большинстве случаев. Единственная проблема, когда у вас много записей, которые в основном одинаковы. Например, в вашем случае, если вы введетеРоберт для имени и есть несколько сотенРоберт записи в списке ...

Есть много приложений, которые добавляют автозаполнение администратору Django:

Джанго-расширения (ForeignKeyAutocompleteAdmin)Джанго-автозаполнения (в Google Code)Джанго-Ajax-выбираетДжанго-админ-автозаполнениеДжанго-автозаполнения (Тирион)

Мой любимый - последний. Он хорошо написан, его можно использовать как с администратором, так и вне его, он работает с ManyToManyFields, ForeignKeyFields, CharFields и т. Д.

Я сделалвилка этого проекта для моего клиента, который добавляет некоторые тонкости, такие как кнопка поиска (лупа), какForeignKeyRawIdWidget.

 CrazyGeek10 нояб. 2017 г., 07:20
Прекрасно .. Спасибо
 shuckc10 окт. 2018 г., 18:04
Продолжайте читать для встроенной Django 2.0 ...

ForeignKeyRawIdWidget изdjango.contrib.admin.widgets, Он отображает отношения FK в качестве входных данных с небольшой кнопкой вдоль стороны, которая представляет всплывающее окно с возможностью поиска.

Ваш ответ на вопрос