1.先前准备

        创建好一个django项目,在创建的文件夹目录下启动cmd,使用django的项目创建指令

        django-admin startproject mysql_django

        这样就创建好了一个"mysql_django"的django项目

 

2.在settings.py文件下配置MySQL数据库链接

在配置链接前,需要安装好MySQL数据库,使用8.0几的版本,并且在安装的时候使用老式的密码方式,使用最新的可能会报错。

然后是安装好mysqlclient模块,同样在cmd中pip install mysqllient即可

pip install mysqllient

#找到如下的配置
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

然后做MySQL数据库链接的配置更改。 


DATABASES = {
    'default': {
        #sqlite3  替换成mysql
        'ENGINE': 'django.db.backends.mysql',
        #数据库的名字
        'NAME': 'models_study',
        #本机地址
        'HOST': '127.0.0.1',
        #链接数据库的用户名
        'USER': 'root',
        #数据库的密码
        'PASSWORD': '123456',
        #数据库使用的端口号
        'PORT': 3306,
    }
}

 

3.数据库链接测试

        1.创建一个子应用

                在项目文件目录下,启动cmd,输入django指令

        python manage.py startapp mysql_apps

 

创建完子应用先在settings.py文件中注册一下,刚创建的子应用

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'mysql_apps',
]
        2.使用models模型简单的创建一个字段,测试数据库链接是否正常

 

from django.db import models

# Create your models here.
class Student(models.Model):
    name = models.CharField(max_length=30)

#在cmd中使用django命令预备创建字段

python manage.py makemigrations mysql_apps

有以下提示就是成功。

Migrations for 'mysql_apps':
  mysql_apps\migrations\0001_initial.py
    - Create model Student

 预备的py文件在图片中可以找到

 

#使用该django指令,正式的创建数据库字段,成功即代表数据库链接无误
python manage.py migrate mysql_apps

Operations to perform:
  Apply all migrations: mysql_apps
Running migrations:
  Applying mysql_apps.0001_initial... OK

 

笔记:

        python manage.py migrate 在不指定子应用的时候,会把django默认需要创建的数据库字段都创建一遍。

        创建子应用后,第一时间去settings.py 中注册子应用

        数据库链接的配置,核对准确,有事会粗心大意打错数据的名字也不一定

        django在创建表的时候会自动创建一个id字段,这是自动的,也可以自定义id字段。

        

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐