django 配置mysql流程以及运行报错的解决

0 环境

  • 系统环境:window
  • 编辑器:IDEA
  • 开发语言:django3.1.1

1 配置数据库

DATABASES = {
    # 'default': {
    #     'ENGINE': 'django.db.backends.sqlite3',
    #     'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    # }
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        # 'NAME': 'mysitedb',
        'NAME': 'myblog',
        'HOST': '127.0.0.1',
        'PORT': '3306',
        'USER': 'root',
        'PASSWORD': '123',

    }
}
django 配置mysql流程以及运行报错的解决
配置明细

2 配置models

from django.db import models

# Create your models here.
class SiteInfo(models.Model):
    # 数据库默认为null 在填写表单的时候blank可以为空
    title = models.CharField(null=True,blank=True,max_length=50)
    logo = models.ImageField(upload_to="logo/",null=True,blank=True)

    def __str__(self):
        return self.title

3 在admin中注册model

from django.contrib import admin
from .models import SiteInfo

# @admin.register(SiteInfo)
# class SiteInfoAdmin(admin.ModelAdmin):
#     link_display = ('id', 'title', 'logo')

admin.site.register(SiteInfo)

3 数据迁移报错

「pymysql报错'mysqlclient 1.3.13 or newer is required'」

import pymysql
pymysql.version_info=(1, 4, 2, "final", 0)
pymysql.install_as_MySQLdb()
django 配置mysql流程以及运行报错的解决
init.py添加

3 执行迁移

# 适用于单个应用
python manage.py makemigrations
python manage.py migrate
django 配置mysql流程以及运行报错的解决
执行成功
django 配置mysql流程以及运行报错的解决
查看
django 配置mysql流程以及运行报错的解决
数据库查看

4 启动项目

python manage.py runserver

5 访问admin

django 配置mysql流程以及运行报错的解决
提示创建账号

「进入项目根目录」

python manage.py createsuperuser
django 配置mysql流程以及运行报错的解决
创建账号
django 配置mysql流程以及运行报错的解决
再次登陆
django 配置mysql流程以及运行报错的解决
修改密码 一些权限等

6 进入myblog

django 配置mysql流程以及运行报错的解决
在这里插入图片描述
django 配置mysql流程以及运行报错的解决
在这里插入图片描述
django 配置mysql流程以及运行报错的解决
数据库插入成功

7 注意项

「注意:没有myblog名 大概率没有添加admin.site.register(某个model)」 django 配置mysql流程以及运行报错的解决

「注意:有时会添加报错 没有遇到 直接略过」 django 配置mysql流程以及运行报错的解决

1.根据报错定位,如图下 django 配置mysql流程以及运行报错的解决

django 配置mysql流程以及运行报错的解决
具体报错

2.按照mvt的流程排查 比如model写的是否对,我就错在__str__

3.检查是否迁移成功了 2 3不分先后(看情况)

  • 若是迁移问题

旧文件删除 重新生成

django 配置mysql流程以及运行报错的解决django 配置mysql流程以及运行报错的解决

  • 在多应用的环境下 加需要迁移的某个应用名了
python manage.py makemigrations myblog(指定应用名)
python manage.py migrate myblog(指定应用名)

8 小结

django 配置mysql流程以及运行报错的解决
小结

上一篇:高可用集群corosync+pacemaker之pcs安装使用


下一篇:django系列==5、mysql数据库配置和数据迁移