Mavericks 上的 Django 和 MySQL 问题
我现在在用Mac OSX 10.9 Mavericks系统,想在Python 3下运行django。因为我用的是Python 3,所以需要从mysql的开发者那里下载官方的连接器,可以在这里找到,我在命令行里简单测试了一下,发现它能正常工作。
我用 python manage.py runserver
命令启动服务器,设置引擎为 "mysql.connector.django"
,这是我在一个例子中看到的,可以在这里找到,结果出现了这个错误:
django.core.exceptions.ImproperlyConfigured: 'mysql.connector.django' isn't an available database backend.
Try using 'django.db.backends.XXX', where XXX is one of:
u'mysql', u'oracle', u'postgresql_psycopg2', u'sqlite3'
Error was: No module named mysql.connector.django.base
于是我又切换回默认的设置,使用 "django.db.backends.mysql"
作为引擎,结果又出现了这个错误:
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb
我现在不知道该怎么继续下去了。我不能安装MySQLdb,因为我是在Python 3下运行django,而它不支持这个版本,但我觉得我在使用这个连接器时肯定漏掉了什么。
1 个回答
18
对于 Python 2.7 和 3.3 及以上版本,有一个叫做 mysqlclient 的驱动,可以和 Django 1.8 一起使用。
pip install mysqlclient
在你的设置中需要配置这个驱动。
DATABASES = {
'default': {
'NAME': '',
'ENGINE': 'django.db.backends.mysql',
'USER': '',
'PASSWORD': '',
}
}
这里有官方的 Django 文档,介绍了关于 MySQL 驱动的内容:
https://docs.djangoproject.com/en/1.8/ref/databases/#mysql-db-api-drivers