Спасибо, начал искать. И мне уже казалось, что ошибка происходит при вызове get_app_config:
def get_app_config(self, app_label):
"""
Imports applications and returns an app config for the given label.
Raises LookupError if no application exists with this label.
"""
self.check_apps_ready()
try:
return self.app_configs[app_label]
except KeyError:
message = "No installed app with label '%s'." % app_label
for app_config in self.get_app_configs():
if app_config.name == app_label:
message += " Did you mean '%s'?" % app_config.label
break
raise LookupError(message)
Видимо, при обращении к очередному элементу словаря app_configs:
[<AuthConfig: auth>, <ContentTypesConfig: contenttypes>, <SessionsConfig: sessio
ns>, <MessagesConfig: messages>, <StaticFilesConfig: staticfiles>, <MainConfig:
main>, <AdminConfig: admin>, <DebugToolbarConfig: debug_toolbar>]
app_configs - это словарь, который содержит приложения из INSTALLED_APPS моего settings.py
Но как она возникает, вопрос. Код нормально выполняется до последней строки get_model:
return app_config.get_model(model_name, require_ready=require_ready)
В качестве параметров в нее передается model_name = 'Profile' и require_ready=False. Ошибка возникает на нем, но это не рекурсия. Метод app_config.get_model не принадлежит registry.App, в котором находится вызываемый get_model. Он находится где-то в объекте класса <MainConfig.main>. Пока уперся в него, не пойму где искать