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

相关推荐
花酒锄作田2 小时前
[python]argparse 包在聊天机器人中的应用
python
NiceCloud喜云4 小时前
Opus 4.8 的 Effort Control 怎么选:Low 到 Max 五档策略
android·java·大数据·前端·c++·python·spring
AI玫瑰助手4 小时前
Python函数:默认参数的定义与注意事项
开发语言·python·信息可视化
weixin_468466854 小时前
全局与局部注意力机制新手实战指南
人工智能·python·深度学习·算法·自然语言处理·transformer·注意力机制
小糖学代码5 小时前
LLM系列:环境搭建:5.Python-dotenv 环境变量管理
人工智能·python·深度学习·神经网络
智慧物业老杨5 小时前
智慧物业合同周期管理系统:从风险预警到智能交接的全流程数智化落地方案
java·人工智能·python
橙橙笔记6 小时前
Python的学习第一部分
python·学习
voidmort6 小时前
3. 微调(Fine-tuning)与强化学习(RL)的核心思想
python·深度学习·算法
biter down7 小时前
基于 Pywinauto 的 QQ 音乐 GUI 自动化测试实践
python
人道领域7 小时前
【LeetCode刷题日记】669.修剪二叉搜索树
开发语言·python·算法