解决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会报错:

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

扩展:

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()

相关推荐
失败尽常态52329 分钟前
用Python实现Excel数据同步到飞书文档
python·excel·飞书
2501_9044477431 分钟前
OPPO发布新型折叠屏手机 起售价8999
python·智能手机·django·virtualenv·pygame
青龙小码农31 分钟前
yum报错:bash: /usr/bin/yum: /usr/bin/python: 坏的解释器:没有那个文件或目录
开发语言·python·bash·liunx
大数据追光猿37 分钟前
Python应用算法之贪心算法理解和实践
大数据·开发语言·人工智能·python·深度学习·算法·贪心算法
Leuanghing1 小时前
【Leetcode】11. 盛最多水的容器
python·算法·leetcode
2501_904447741 小时前
华为发力中端,上半年nova14下半年nova15,大力普及原生鸿蒙
华为·智能手机·django·scikit-learn·pygame
xinxiyinhe2 小时前
如何设置Cursor中.cursorrules文件
人工智能·python
诸神缄默不语3 小时前
如何用Python 3自动打开exe程序
python·os·subprocess·python 3
橘子师兄3 小时前
分页功能组件开发
数据库·python·django
Logintern093 小时前
使用VS Code进行Python编程的一些快捷方式
开发语言·python