Comments 3
Классная статья, спасибо! В последнее время приходится части конфигурировать админку в старых проектах. Знаете, насколько я понимаю, чтобы отключить autodiscover, можно просто отнаследоваться от класса SimpleAdminConfig (родителя AdminConfig
) и там будет все тоже самое, только без вызова self.module.autodiscover() в ready. У меня работает без проблем и не нужно больше делать какой-нибудь admin.site.unregister, если хочешь переопределить админку уже зарегестрированную в сторонней библиотеке.
Документация про то же пишет:
Note that you may not want autodiscovery of
admin
modules when using your ownAdminSite
instance since you will likely be importing all the per-appadmin
modules in yourmyproject.admin
module. This means you need to put'django.contrib.admin.apps.SimpleAdminConfig'
instead of'django.contrib.admin'
in yourINSTALLED_APPS
setting.
Хотя с наследованием в apps вариант мне больше по душе.
Всегда пожалуйста. Самый большой косяк Django admin я правлю тут - https://dev.to/danilovmy/how-to-solve-the-singleton-problem-in-django-modeladmin-g42
ну и там же другие фичи типа autocomplete, inlines, nested inlines. Ну или пригодится вся серия моих докладов Hidden gems in django admin (гуглить)
Django ModelAdmins autoregister