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.
Почему это происходит?