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',

    }
}

配置明细

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()

init.py添加

3 执行迁移

# 适用于单个应用
python manage.py makemigrations
python manage.py migrate

执行成功

查看

数据库查看

4 启动项目

python manage.py runserver

5 访问admin

提示创建账号

进入项目根目录

python manage.py createsuperuser

创建账号

再次登陆

修改密码 一些权限等

6 进入myblog

在这里插入图片描述

在这里插入图片描述

数据库插入成功

7 注意项

注意:没有myblog名 大概率没有添加admin.site.register(某个model)
没有添加admin.site时

注意:有时会添加报错 没有遇到 直接略过
添加报错

1.根据报错定位,如图下
报错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gQihw4RU-1599956928846)(https://imgkr2.cn-bj.ufileos.com/4becabaf-a1cb-4d9a-a893-3e2d37fb6dfe.png?UCloudPublicKey=TOKEN_8d8b72be-579a-4e83-bfd0-5f6ce1546f13&Signature=kxOp4BeH2An3MIw6k55toahsKSw%253D&Expires=1600041444)]

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

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

  • 若是迁移问题

旧文件删除 重新生成

旧文件删除 重新生成
用不到sqlite3 保险起见删了它

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

8 小结

小结

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值