1)安装驱动程序
pip install PyMySQL
2)在Django的工程同名子目录的__init__.py文件中添加如下语句
from pymysql import install_as_MySQLdb
install_as_MySQLdb()
3)在配置文件settings.py修改
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '127.0.0.1', # 数据库主机
'PORT': 3306, # 数据库端口
'USER': 'root', # 数据库用户名
'PASSWORD': '123456', # 数据库用户密码
'NAME': 'test_db' # 数据库名字
}
}
4)执行命令如下,会在项目根目录中出现文件models.py,里面包含了已有数据库的所有表及结构,如果是远程数据库请确保可以远程连接:
python manage.py inspectdb > models.py
5)如果使用django3,可能会有该错误:django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3。解决办法,修改__init__.py
,多插入一行代码:
import pymysql
pymysql.version_info = (1, 3, 13, "final", 0)
pymysql.install_as_MySQLdb()
6)在生成的models.py文件中把想要使用的表的 managed 都改成 True。
7)执行如下命令就可以对已有数据库进行 ORM 操作了:
python manage.py migrate