Django链接mysql数据库

1.在虚拟环境中安装mysql包
2.在mysql中创建数据库
3.找到settings.py,找到DATABASES 修改,修改内容按提示修改:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'test2',
        'USER': '用户名',
        'PASSWORD': '密码',
        'HOST': '数据库服务器ip,本地可以使用localhost',
        'PORT': '端口,默认为3306',
    }
}

在迁移时会报错:

解决办法:

MySQLdb 只适用于python2.x,发现python3上的pip装不上。它在py3的替代品是:pip install PyMySQL
而django默认的还是使用MySQLdb:执行会报:ImportError: No module named 'MySQLdb'
解决:
在站点的 __init__.py 文件中添加:

import pymysql
pymysql.install_as_MySQLdb()

上两句话的意思时如果django用 MySQLdb,就用 pymysql 替代

然后再进行迁移(注意要进入虚拟环境并再mana.py的父级目录中添加)

python manage.py makemigrations
python manage.py migrate


使用数据库生成模型类

python manage.py inspectdb > appname/models.py
python manage.py inspectdb > booktest/models.py

一般不使用,因为默认生成的内容多而复杂。所以一般是自己定义模版类。

开发流程

1.在models.py中定义模型类,要求继承自models.Model
2.把应用加入settings.py文件的installed_app项
3.生成迁移文件
4.执行迁移生成表
5.使用模型类进行crud操作

你可能感兴趣的:(Django链接mysql数据库)