py3 与 Django 链接数据库: No module named 'MySQLdb'

py3 与 Django 链接数据库: No module named 'MySQLdb'


enter description here

一言:让这个无趣的世界变得有趣起来,这就是我一辈子的信念.

问题

在使用 Django 链接 MySQL 数据库的时候,出现了错误html

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'

解决

在 python2 中,使用 pip install mysql-python 进行安装链接MySQL的库,使用时 import MySQLdb 进行使用python

在 python3 中,改变了链接库,改成了 pymysql 库,使用pip install pymysql 进行安装,直接导入import pymysql使用mysql

原本在上面的基础上把 python3 的 pymysql 库安装上去就好了,可是问题依旧sql

通过查阅得知, Django 依旧是使用 py2 的 MySQLdb 库的,获得进行适当的转换才行shell

__init__.py 文件中添加如下代码数据库

import pymysql
pymysql.install_as_MySQLdb()

额,找了一下却没有找到 install_as_MySQLdb() 这个方法的源码,不过顾名思义应该是让 Django 把 pymysql 当成 MySQLdb 来使用吧django