DJango 框架学习入门教程(二) —— DJango 框架使用常见警告
2024年02月29日 15:13:45 Django ⁄ 共 1132字 暂无评论 ⁄ 被围观 619次

警告一:

在使用 DJango 框架执行迁移文件的命令时,可以看到出现如下警告:

(ll_env) D:\workspace\workspace-mengll\learning-log>python manage.py migrate
System check identified some issues:

WARNINGS:
?: (mysql.W002) MySQL Strict Mode is not set for database connection 'default'
        HINT: MySQL's Strict Mode fixes many data integrity problems in MySQL, such as data truncation upon insertion, by escalating warnings into errors. It is strongly recommended you activate it. See: https://docs.djangoproject.com/en/5.0/ref/databases/#mysql-sql-mode
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, learning_logs, sessions
Running migrations:
  Applying learning_logs.0001_initial... OK

(ll_env) D:\workspace\workspace-mengll\learning-log>

虽然可以看到迁移文件执行成功,且数据库中也创建成功了对应的表,但对于稍有强迫症的我们来说总感觉不爽,需要把警告干掉才行,去掉警告信息的配置方式如下:

修改 DJango 创建的应用程序下的 settings.py 配置文件,找到数据库信息配置的部分,添加 sql_mode 配置即可,如下:

DATABASES = {
    'default': {
        # 'ENGINE': 'django.db.backends.sqlite3',
        # 'NAME': BASE_DIR / 'db.sqlite3',
        'ENGINE': 'django.db.backends.mysql',  # 数据库引擎
        'NAME': '数据库名称',  # 数据库名称
        'HOST': '数据库地址',  # 数据库地址,本机 ip 地址 127.0.0.1
        'PORT': 数据库端口,  # 端口
        'USER': '数据库用户名',  # 数据库用户名
        'PASSWORD': '数据库密码',  # 数据库密码
        'OPTIONS': {
            'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
        }
    }
}

后续再执行迁移文件,可以看到警告已消除。 ​

给我留言

留言无头像?