您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Django 1.7抛出django.core.exceptions.AppRegistryNotReady:模型尚未加载

Django 1.7抛出django.core.exceptions.AppRegistryNotReady:模型尚未加载

这就是为我们和这些人解决的问题:

我们的项目从Django 1.4开始,然后转到1.5,然后到1.7。我们的wsgi.py看起来像这样:

import os

from django.core.handlers.wsgi import WSGIHandler

os.environ['DJANGO_SETTINGS_MODULE'] = 'myapp.settings'
application = WSGIHandler()

当我更新到1.7样式的WSGI处理程序时:

import os

from django.core.wsgi import get_wsgi_application

os.environ['DJANGO_SETTINGS_MODULE'] = 'myapp.settings'
application = get_wsgi_application()

现在一切正常。

问题出在你的注册应用中。django-registration似乎get_user_module()models.py在模块级别调用的(当应用程序注册过程仍在加载模型时)。这将不再起作用:

try:
    from django.contrib.auth import get_user_model
    User = get_user_model()
except ImportError:
    from django.contrib.auth.models import User   

我将更改此模型文件以仅get_user_model()方法内部调用(而不是在模块级别),并且在FK中使用类似以下内容方法

user = ForeignKey(settings.AUTH_USER_MODEL)

顺便说一句,django.setup()你的manage.py文件中不需要调用,而是在中为你调用execute_from_command_line

运行以下命令解决了我的问题:

import django
django.setup()

但是我不确定为什么需要这个。评论将不胜感激。

Go 2022/1/1 18:17:50 有504人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶