我正在尝试通过 Django 连接 MySQL。
我有 Python 3 Django 1.7 操作系统:Windows 8
MySQL 5.6.12
我已经从 http://dev.mysql.com/downloads/connector/python/ 这个 - mysql-connector-python-1.1.4-py3.3
创建新项目使用: django-admin.py 启动项目
创建了新的数据库:mysite
像这样在设置文件中更改数据库设置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mysite',
'USER': 'username',
'PASSWORD': 'password',
'HOST': '127.0.0.1',
'PORT': '3306',
}
}
当我运行 python manage.py migrate 时
我收到这个错误: 文件“D:\Python33\lib\site-packages\django\apps\registry.py”,第 115 行,check_ready raise RuntimeError("App registry isn't ready yet.") RuntimeError:应用注册表尚未准备好。
请帮助我或给我一些指示?
最佳答案
你检查过 django 1.7 的发布文档了吗? http://django.readthedocs.org/en/latest/releases/1.7.html#backwards-incompatible-changes-in-1-7
它声明在以下情况下您将收到该错误:
您在加载所有内容之前就开始使用模型(即,您在模块级别的某处使用了模型)。这就是我遇到这个问题的方式。
您有一个使用 django(而不是管理命令)的独立 python 脚本。这是一个简单的修复 - 只需将“django.setup()”添加到脚本中即可。
编辑:我忘了提及 - 上述更改也很有可能与其他 INSTALLED_APPS 混淆。例如,django-tastypie 现在与 django 的最新开发版本不兼容。南方也很有可能被破坏。
关于Python 3 - Win 8 上的 Django 1.7 - MySQL 连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20902898/