时间:2021-05-22
错误信息为
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
错误原因:
因为Django连接MySQL时默认使用MySQLdb驱动,但MySQLdb不支持Python3,因此这里将MySQL驱动设置为pymysql。由此产生的版本兼容问题。
pymysql安装方法:
解决办法:
1. django降到2.1.4版本
2. 修复源码
2.1 找到Python环境下 django包,并进入到backends下的mysql文件夹
2.2 找到base.py文件,注释掉 base.py 中如下部分(35/36行)
if version < (1, 3, 3): raise ImproperlyConfigured("mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)2.3 此时仍然报错,找到operations.py文件,将decode改为encode
AttributeError: ‘str' object has no attribute ‘decode'
解决办法:
#linux vim 查找快捷键:?decodeif query is not None: query = query.decode(errors='replace')return query#改为if query is not None: query = query.encode(errors='replace')return query测试,执行数据迁移
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
很多小伙伴在学习Django的时候,总是搞不定版本的问题,下面来一起看一张表,轻松解决Python版本和Django版本的兼容问题。Django和Python兼
问题描述:高版本sql备份在低版本sql还原问题(出现媒体簇的结构不正确)分析原因:sql版本兼容问题,sqlserver兼容级别是用作向下兼容用,高版本的sq
1.requiremwnts:Django版本:2.2python版本:3.6djangorestframework版本:3.1djangorestframew
mybatis-plus版本不兼容问题1,mybatis-plus版本中存在一个问题。2,mybatis-plus-extension版本为v3.2.1.1-S
AndroidsetButtonDrawable()的兼容问题解决办法setButtonDrawable()的兼容问题API16实现/***Settheback