zoukankan      html  css  js  c++  java
  • Django2.2连接mysql数据库出现django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.3 or newer is required; you have 0.7.11.None问题

    在使用Django2.2开发的时候,想要使用mysql数据库,在settings.py文件中更改命令:

    DATABASES = {
    'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'python',
    'USER': "root",
    'PASSWORD': "yhr2323214310",
    'HOST': '',
    'PORT': ''

    }
    }

    再安装好pymysql,然后在__init__.py文件中添加:

    import pymysql

    pymysql.install_as_MySQLdb()

    然后在models中创建好表类后,进行数据迁移时出现问题:

    django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.3 or newer is required; you have 0.7.11.None

    上网查一下解决方法,费了好大劲

    解决方法:

    1.找到base.py文件,我的是在~/PycharmProject/myBlog/venv/lib/python3.6/site-packages/django/db/backends/mysql/base.py

    就是在你项目文件夹下的/venv/lib/python3.6/site-packages/django/db/backends/mysql/中

    进去进行修改:

    找到这段代码:version = Database.version_info

    修改下面的if语句:添加pass,再注释掉,就像这个样子:

    if version < (1, 3, 13):
    pass
    '''
    raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
    '''

    保存后,在进入同路径下的operations.py文件

    query = query.decode(errors='replace')中的decode改为encode

    保存

    再次进行数据迁移,成功!可以成功连接到mysql。

  • 相关阅读:
    iOS开发——Xcode快捷键
    iOS开发——国际化支持Localizable.strings
    SQL 函数
    常用窗体表单布局
    Extjs grid combo
    怎么完全卸载sql2005?
    ExtJS文件上传
    ExtJS视频学习笔记
    ExtJS问题集——Menu的show()和showBy()函数是什么意思
    C# DataGridView操作
  • 原文地址:https://www.cnblogs.com/Horace-blogs/p/11357232.html
Copyright © 2011-2022 走看看