什么是pymysql3相当于django.db.backends.mysql

时间:2013-03-13 19:12:32

标签: python django

我正在运行python33并且我已经安装了pymysql3但是我需要在Django设置中指定ENGINE:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'chris_test',                      # Or path to database file if using sqlite3.
        # The following settings are not used with sqlite3:
        'USER': 'some_user',
        'PASSWORD': 'some password',
        'HOST': 'some_host',                      # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
        'PORT': '3306',                      # Set to empty string for default.
    }
}

2 个答案:

答案 0 :(得分:3)

查看django-mysql-pymysql了解更多信息。具体来说,

'ENGINE': 'mysql_pymysql',

但这对我来说还不够。我不得不使用this answer 。如果你有一个foo Django应用程序,那么在你的`foo / init .py'中添加以下内容:

import pymysql
pymysql.install_as_MySQLdb() 

答案 1 :(得分:1)

Django已经提供了一个MySQL后端。从查看PyMySQL,它似乎是一个通用的MySQL客户端。您不能随意使用不同的库来代替现有的Django后端; API将完全不兼容。

有一个项目出现在provide a Django backend that uses PyMySQL internally,但作者声称它是 experimental ,它共有5次提交,自2012年以来一直没有更新,所以我不建议尝试使用它。