Просто обнаружил отличную встроенную функцию для администратора Django, выпущенной в версии 2.0.
Оказывается, Там есть
Допустим, в models.py
У вас есть две модели: Человек
и Проблема
Отказ У человека может быть много проблем ..
Итак, мы строим простое Personadmin
:
from django.contrib import admin from . import models @admin.register(models.Person) class PersonAdmin(admin.ModelAdmin): pass
И мы в конечном итоге с чем-то подобным:
Теперь, как видите, Дэйв имеет утечный кран, его шнурки для обуви отменены, и он сломался. Бедный парень.
Но давайте будем серьезными, этот многотоманский виджет сосет. Если этот список вырастет, это будет огромная боль в заднице, чтобы выбрать много предметов.
Select2 – отличный вариант .. И получается Django, добавил его в базу установки в версии 2.0. Thx парней!
Сделайте небольшие модификации на admin.py
:
from django.contrib import admin from . import models @admin.register(models.Person) class PersonAdmin(admin.ModelAdmin): autocomplete_fields = ['problems'] @admin.register(models.Problem) class ProblemAdmin(admin.ModelAdmin): search_fields = ['description']
и вуаля:
Дэйв до сих пор не может связать свою обувь, и теперь он смачивает кровать. Но, по крайней мере, он выяснил, как иметь использоваемый многотоманский виджет в своем аддиайдере Django!
Надеюсь, что этот быстрый совет поможет вам. Следуй за мной здесь на dev.to или на Twitter @Connorbode Для более Django, Python, Linux и т. Д. Когда я строю и учиюсь.
Оригинал: “https://dev.to/connorbode/builtin-select2-widget-in-django-admin-3ip”