python3,django2.0.7以上版本在使用mysql的时候会有问题。
1、settings.py配置文件中配置mysql数据库:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME':'shoping',
'USER':'root',
'PASSWORD':'ssd6h38q1',
'PORT':3306,
'HOST':'127.0.0.1'
}
}
2、需要在任意的__init__或在配置文件中,一般在项目下的__init__文件下写上。
import pymysql
pymysql.install_as_MySQLdb()
注:如果提示要安装模块,就pip安装一下。
3、运行项目,会报错。
File "F:\Virtualenvs\luffy\lib\site-packages\django\db\backends\mysql\operations.py", line 146, in last_executed_query
a、点击operations.py,进入该模块,到146行,
if query is not None:
将:
query = query.decode(errors='replace')
改:
query = query.encode(errors='replace')
4、再运行,可能还会报版本错误(如果没有报错,则不用管)
报错信息:
解决方法:下面两行注释掉(点击base.py进入,到36行就能找到)
5、再运行项目,就不会报错了。