检查django是否安装mysql,django 配置mysql流程以及运行报错的解决

本文详细介绍了如何在Windows环境下使用IDEA配置Django3.1.11项目,连接MySQL数据库,包括数据库配置、模型创建、admin注册、数据迁移以及解决迁移过程中的错误。特别讨论了当遇到`pymysql`报错`mysqlclient1.3.13 or newer is required`时的解决方案,并给出了数据迁移的步骤。此外,还提醒了在多应用环境中进行迁移的注意事项。
摘要由CSDN通过智能技术生成

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

}

}

782a8ea57473d788d2c2cfc3e1f70966.png配置明细

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

ae156641b707c6e666bbca0eaac321cb.pnginit.py添加

3 执行迁移

# 适用于单个应用

python manage.py makemigrations

python manage.py migrate

c31b781081f850ffc9f1184869295f46.png执行成功

6621a5db910c3411eb590d8862af0263.png查看

b4cfaa84ddbe3d1690c934dcc1a4ce6e.png数据库查看

4 启动项目

python manage.py runserver

5 访问admin

ca6efd502ca7b5cb87db255f4952f946.png提示创建账号

「进入项目根目录」

python manage.py createsuperuser

08e15e3ce5520909e3cf80f4a579b7c8.png创建账号

25057d288477c7be03ea8e7f5578f44f.png再次登陆

63a8ec3ef969fa4f369cf8a5ce1abe5c.png修改密码 一些权限等

6 进入myblog

7b181023f566e1a2efb6644e5aa45fd8.png在这里插入图片描述

e141f96dc025871e4eace4634dc9ea20.png在这里插入图片描述

34a73dd4d3805d74534f9fe044cbaa07.png数据库插入成功

7 注意项

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

a4c031de46736f48b5a303dcc8729f58.png

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

a1efcfc467d629a047d9a2a361abb990.png

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

c7eecaf533e35d5d529fcd79651fe35c.png

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不分先后(看情况)

若是迁移问题

旧文件删除 重新生成

f40a5805905563ad65be795b3e4e8f00.png

2174ba8ae21fca2e3dd4da34d66e8cc5.png

在多应用的环境下 加需要迁移的某个应用名了

python manage.py makemigrations myblog(指定应用名)

python manage.py migrate myblog(指定应用名)

8 小结

d5bb64e543038b9ef081b4541ea05c4e.png小结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值