解决Django报错 : No module named ‘MySQLdb‘

Django的版本是2.0,Python的版本号是3.6.4

在models.py创建好了模型类之后使用命令:python manage.py makemigrations 进行迁移,但是突然报错:ImportError:No module named 'MySQLdb'

查询了相关资料发现python2.x版本是支持mysqldb,  在python3环境下安装mysqldb会报错:

解决Django报错 : No module named ‘MySQLdb‘_第1张图片

但是在python3.x版本已经不支持mysqldb,而是使用pymysql代替了mysqldb,但是django中默认使用的还是mysqldb,这个就比较坑人了,所以会出现这个错误,要想解决这个问题只需要在应用的根目录的__init__.py这个文件中加入如下代码就可以解决问题:

解决Django报错 : No module named ‘MySQLdb‘_第2张图片

扩展:

mysqldb和pymysql都是python用于连接mysql的接口,如果你使用的python2.x的环境的话,使用pip进行安装的时候可以使用:pip install MySQL-python,则这时候就不需要在__init__.py中添加上面的那两行代码

如果使用的是python3.x的环境,同样使用pip进行安装的时候输入一下命令就可以:pip install pymysql 

当然这时候需要注意的是在项目app的__init__.py文件中输入:

import pymysql

pymysql.install_as_MySQLdb()

你可能感兴趣的:(django,sqlite,python)