Django5——model层连接数据库
上一篇:https://blog.csdn.net/m0_73991249/article/details/145133561?spm=1001.2014.3001.5501
讲了【app模块化】+【url路由】
这一篇讲连接数据库的model层
一、连接数据库
1、创建APP模块
还是一样【python manage.py startapp <你的app模块名称>】来创建一个app
因为我们通常是一个模块APP链接一个数据库的,打个比方网易云音乐这个项目,它的“音乐模块”连“音乐相关的数据库”、“笔记模块”连“笔记相关数据库”、“网易商城模块”连“商城相关数据库”,不可能全混在一起的
然后添加到主模块的setting.py里注册
2、下载管理mysql数据库的工具
【pip install mysqlclient】
3、创建数据库并在models.py对于编写
先到数据库创建一个数据库
;
然后依旧回到主项目里的【setting.py】配置mysql相关配置信息
DATABASES = { "default": { "ENGINE": "django.db.backends.mysql", "NAME": "你创建的数据库的名字", "USER": "root", "PASSWORD": "123456", "HOST": "localhost", "PORT": "3306", } };
然后到刚刚创建的模块app下的【models.py】写代码
这个文件就是专门创建【数据表对象】的,写好的对象可以后续直接生成一个【数据表】
然后创建表的代码我就不细讲了,给个示例就看懂了
from django.db import models from datetime import datetime # 开始创建我们的数据库表对象 class User(models.Model): # id = models.AutoField(primary_key=True) # 但其实主键可以不写 username = models.CharField(max_length=20, unique=True, verbose_name="用户名") password = models.CharField(max_length=20, verbose_name="密码") phone = models.CharField(max_length=20, verbose_name="电话") register_time = models.DateTimeField(auto_now_add=True) # 这个是设置表名 # 如果不设置,创建表的时候就默认是:“数据库名_表对象名” # 比如:“myapp_User” class Meta: db_table = "user"
4、迁移数据表
最后,我们只需要两步就可以生成对应的数据表了
注意,前面setting.py的INSTALLED_APPS那块注册了很多django自带的数据表,如果我们不注释,再生成我们自己的数据表的同时会把这些数据表也生成,注释了就不会
迁移完再把注释去掉,因为还有很多文件带着这几个模块,启动要用到
;
- 第一步:生成django的迁移文件
- models.py只是创建一个数据表对象,但是这个格式不能直接转化成mysql的表,要靠迁移文件
- 【python manage.py makemigrations】
- 第二步:迁移生成
- 【python manage.py migrate】
二、对数据增删改查操作
那么有了数据表之后,我们的增删改查操作就是在【views.py】操作了
我就不一一记录了,只记录【插入数据】的示例
依旧是路由分发一条龙服务
然后我们在【views.py】导入【models.py】的数据表对象
然后下图我绿色框的地方就是插入,就是给一个对象赋值这么简单,其他的操作AI一下就行了,我也是AI搜的,根本没人记
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


















所有评论(0)