您好,登錄后才能下訂單哦!
安裝報錯類型,解決方案;
1. 數據庫連接報錯
mysqldb只支持python2,pymysql支持3,都是使用c寫的驅動,性能更好
# django中修改配置文件setting.py添加如下代碼: import pymysql pymysql.install_as_MySQLdb()
解決方案:
修改數據庫:mysqldb=>pymysql
2. 因為切換數據庫導致版本錯誤
raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
解決方案:
注釋掉檢測數據庫版本的代碼
# "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/django/db/backends/mysql/base.py", line 36, in <module> # if version < (1, 3, 13): # raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
3. 切換數據庫導致轉碼錯誤
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/django/db/backends/mysql/operations.py", line 146, in last_executed_query
query = query.decode(errors='replace')
解決方案: ==暫時使用第二種類型==
修改decode為encode
把條件注釋掉,防止出現不可預知的錯誤,這個錯誤很可能是python2中類型str和unicode的原因,python3中只有unicode類型數據
# "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/django/db/backends/mysql/operations.py", line 146 # if query is not None: #query = query.encode(errors='replace')
解決完成之后完美運行
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。