我从Django 1.8升级到1.9,但是遇到了这个问题

django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.


关于stackoverflow的其他解决方案均无效。

我已经尝试了其他解决方案,例如添加

import django
django.setup()


但没有成功。

File "/home/adithya/git/django_proj/manage.py", line 7, in <module>
    from django.contrib.sites.models import Site
  File "/home/adithya/git/virtualenv/env/local/lib/python2.7/site-packages/django/contrib/sites/models.py", line 83, in <module>
    class Site(models.Model):
  File "/home/adithya/git/virtualenv/env/local/lib/python2.7/site-packages/django/db/models/base.py", line 94, in __new__
    app_config = apps.get_containing_app_config(module)
  File "/home/adithya/git/virtualenv/env/local/lib/python2.7/site-packages/django/apps/registry.py", line 239, in get_containing_app_config
    self.check_apps_ready()
  File "/home/adithya/git/virtualenv/env/local/lib/python2.7/site-packages/django/apps/registry.py", line 124, in check_apps_ready
    raise AppRegistryNotReady("Apps aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.

最佳答案

评论太久,因此我将留下答案)

实际上有很多方法可以得到此错误,您只需要找到它即可。我在下面留下了一些流行的变体,但您遇到的真正原因可能有所不同。

校验:


模型init.py文件中的任何自定义函数-可能是原因
另外,请考虑Django要求django.setup()必须先运行,然后才能调用应用程序的某些部分。在设置阶段,它要做的一件重要事情是apps.populate(settings.INSTALLED_APPS)。如果您尝试在安装程序运行之前访问应用程序,则功能check_apps_ready将引发AppRegistryNotReady(“尚未加载应用程序。”)
由于wsgi文件配置错误,可能会发生此异常


另外,您可以尝试逐一禁用INSTALLED_APPS中的应用程序,也许这可以确定问题出在哪里?

关于python - Django 1.9升级问题“django.core.exceptions.AppRegistryNotReady:应用尚未加载。”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56443564/

10-12 00:04
查看更多