Django AppConfig ready()
У меня Django 2.1.7
Я прочитал документацию Django, а также вот это Как использовать django AppConfig.ready() и вот это Определение AppConfig.ready().
Теперь структура папок/файлов выглядит следующим образом,
my_app
__init__.py
urls.py
sub_app1
migrations
__init__.py
admin.py
apps.py
models.py
...
sub_app2
...
sub_app3
...
и все sub_app зарегистрированы в INSTALLED_APPS файле Django settings.py, как my_app.sub_app1, например. Я заметил, что когда я пытаюсь переопределить ready() для sub_app1 в sub_app1.apps.py, переопределение не имеет эффекта.
Когда я уплощаю свою структуру выше как
my_app
__init__.py
urls.py
apps.py
переопределение ready работает нормально.
Другими словами, похоже, что переопределение ready вложенного приложения внутри apps.py вложенного приложения не работает.
Кроме того, при использовании default_app_config внутри приложения __init__.py или my_app.sub_app1.apps.SubApp1Config внутри settings.py INSTALLED_APPS возникает ошибка django.core.exceptions.ImproperlyConfigured: Cannot import 'sub_app1'. Check that 'my_app.sub_app1.apps.SubApp1Config.name' is correct.
Почему это происходит?