欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

django2.2 和 PyMySQL版本兼容問題

 更新時(shí)間:2020年02月17日 14:29:00   作者:studytime  
這篇文章主要介紹了django2.2 和 PyMySQL版本兼容問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

錯(cuò)誤信息為

django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.

錯(cuò)誤原因:

因?yàn)镈jango連接MySQL時(shí)默認(rèn)使用MySQLdb驅(qū)動(dòng),但MySQLdb不支持Python3,因此這里將MySQL驅(qū)動(dòng)設(shè)置為pymysql。由此產(chǎn)生的版本兼容問題。

pymysql安裝方法:

#安裝pymysql
pip install pymysql

#__init__.py
import pymysql
pymysql.install_as_MySQLdb()

解決辦法:
1. django降到2.1.4版本
2. 修復(fù)源碼
2.1 找到Python環(huán)境下 django包,并進(jìn)入到backends下的mysql文件夾

# 使用此命令可以看到對(duì)應(yīng)的文件夾目錄
➜ daliyfresh pip install pymysql
Looking in indexes: https://mirrors.aliyun.com/pypi/simple/
Requirement already satisfied: pymysql in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (0.9.3)

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 此時(shí)仍然報(bào)錯(cuò),找到operations.py文件,將decode改為encode

AttributeError: ‘str' object has no attribute ‘decode'

解決辦法:

#linux vim 查找快捷鍵:?decode
if query is not None:
 query = query.decode(errors='replace')
return query
#改為
if query is not None:
 query = query.encode(errors='replace')
return query

測試,執(zhí)行數(shù)據(jù)遷移

python manage.py makemigrations
python manage.py migrate

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python處理CSV與List的轉(zhuǎn)換方法

    Python處理CSV與List的轉(zhuǎn)換方法

    下面小編就為大家分享一篇Python處理CSV與List的轉(zhuǎn)換方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • 如何在Python中進(jìn)行異常處理

    如何在Python中進(jìn)行異常處理

    這篇文章主要介紹了如何在Python中進(jìn)行異常處理,Python中使用用異常對(duì)象(exception object)表示異常情況,當(dāng)程序運(yùn)行遇到錯(cuò)誤后,就會(huì)觸發(fā)發(fā)異常,下文關(guān)于異常處理的相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-03-03
  • 對(duì)python讀寫文件去重、RE、set的使用詳解

    對(duì)python讀寫文件去重、RE、set的使用詳解

    今天小編就為大家分享一篇對(duì)python讀寫文件去重、RE、set的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • python中對(duì)開區(qū)間和閉區(qū)間的理解

    python中對(duì)開區(qū)間和閉區(qū)間的理解

    這篇文章主要介紹了python中對(duì)開區(qū)間和閉區(qū)間的理解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Python打包模塊wheel的使用方法與將python包發(fā)布到PyPI的方法詳解

    Python打包模塊wheel的使用方法與將python包發(fā)布到PyPI的方法詳解

    這篇文章主要介紹了Python打包模塊wheel的使用方法與將python包發(fā)布到PyPI的方法詳解,需要的朋友可以參考下
    2020-02-02
  • 最新評(píng)論