从1.8升级到django 1.9时出现此错误.我检查了类似问题的答案,但我认为这不是任何第三方软件包或应用程序的问题.
Traceback (most recent call last):
File "manage.py", line 10, in <module> execute_from_command_line(sys.argv)
File "/home/kishore/.virtualenvs/andone/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 350, in execute_from_command_line
utility.execute()
File "/home/kishore/.virtualenvs/andone/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 342, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/kishore/.virtualenvs/andone/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 176, in fetch_command
commands = get_commands()
File "/home/kishore/.virtualenvs/andone/local/lib/python2.7/site-packages/django/utils/lru_cache.py", line 100, in wrapper
result = user_function(*args, **kwds)
File "/home/kishore/.virtualenvs/andone/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 71, in get_commands
for app_config in reversed(list(apps.get_app_configs())):
File "/home/kishore/.virtualenvs/andone/local/lib/python2.7/site-packages/django/apps/registry.py", line 137, in get_app_configs
self.check_apps_ready()
File "/home/kishore/.virtualenvs/andone/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.
Run Code Online (Sandbox Code Playgroud)
我修改了'django.contrib.auth'的已安装应用程序.
inl*_*ger 97
尝试将此行添加到设置文件的顶部:
import django
django.setup()
Run Code Online (Sandbox Code Playgroud)
如果这无法帮助您尝试逐个删除已安装的应用列表中的第三方应用程序.
F.M*_*.F. 17
当您指定使用模型的启动代码时,会发生错误。
如果您遵循此方法并将其放入您的文件中AppConfig,则不得在文件顶部导入模型,而应在ready()方法内部导入模型。例如如下:
# works as models are imported in the ready() method
from django.apps import AppConfig
class MatcherConfig(AppConfig):
name = 'matcher'
verbose_name = 'Match-Making'
def ready(self):
from matcher.background_tasks import close_timeout_games
from matcher.models import FourPlayerGame
# check if a player is not responding every 5 seconds
close_timeout_games(FourPlayerGame, repeat=5)
Run Code Online (Sandbox Code Playgroud)
但是,以下情况是错误的:
# won't work as models are imported at the beginning
from django.apps import AppConfig
from matcher.background_tasks import close_timeout_games
from matcher.models import FourPlayerGame
class MatcherConfig(AppConfig):
name = 'matcher'
verbose_name = 'Match-Making'
def ready(self):
# check if a player is not responding every 5 seconds
close_timeout_games(FourPlayerGame, repeat=5)
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅此答案。
Pav*_*eev 10
就我而言,当我提出发生错误python manage.py makemigrations的Django 2.0.6.
解决方案是运行python manage.py runserver并查看实际错误(这只是一个缺少的环境变量).
Him*_*tel 10
在导入任何模型之前首先导入并运行 django.setup()
上面所有的答案都很好,但是一个人可能犯的一个简单错误是(事实上就我而言)。
我在调用之前从我的应用程序导入了 Django 模型django.setup()。所以正确的方法是做...
import os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'first_project.settings')
import django
django.setup()
Run Code Online (Sandbox Code Playgroud)
然后任何其他导入,例如
from faker import Faker
import random
# import models only after calling django.setup()
from first_app.models import Webpage, Topic, AccessRecord
Run Code Online (Sandbox Code Playgroud)
当您在settings.py文件中的INSTALLED_APPS中添加应用程序但未在计算机中安装该应用程序时,会发生此错误.你有两个解决方案:
如果您不在可能为项目创建的虚拟环境中,也可能出现此错误.
我的问题是我在调用之前尝试导入Django模型 django.setup()
这为我工作:
import django
django.setup()
from myapp.models import MyModel
Run Code Online (Sandbox Code Playgroud)
上面的脚本位于项目的根文件夹中。
尝试删除整个settings.LOGGINGdictConfig并重新启动服务器.如果可行,请根据v1.9文档重写设置.
https://docs.djangoproject.com/en/1.9/topics/logging/#examples
小智 5
对我来说,问题来自这样一个事实,即我正在导入一个应用程序,INSTALLED_APPS该应用程序本身在其__init__.py文件中导入一个模型
我有:
settings.py
INSTALLED_APPS = [
...
'myapp',
...
]
Run Code Online (Sandbox Code Playgroud)
myapp.__init__.py
from django.contrib.sites.models import Site
Run Code Online (Sandbox Code Playgroud)
注释掉import models在myapp.__init__.py做它的工作:
# from django.contrib.sites.models import Site
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
103325 次 |
| 最近记录: |