模型层与ORM介绍

django与数据库通信依赖mysqlclient
模型:
由django.db.models.Model派生的子类。

  • 一个模型类代表数据库中的一张数据表
  • 模型类每一个类属性都代表数据库中的一个字段
  • 模型是数据交互的接口,表示和操作数据库的方法和方式
    ORM框架-Object Relational Mapping
    建立模型类和表之间的对应关系,允许通过面向对象的方式来操作数据库。根据涉及的模型类生成数据表,实现数据模型与数据库的解耦。
    在这里插入图片描述

一、连接数据库

(一)创建一个数据库utf8

create database mysite default charset utf8;

(二)修改settings配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mysite',
        'USER': 'root',
        'PASSWORD': '******',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

二、创建MODELs

在MODEL.py文件里面
继承models

from django.db import models

# Create your models here.
class Book(models.Model):
    title = models.CharField("书名", max_length=50, default='')
    price = models.DecimalField("定价", max_digits=7, decimal_places=2, default=0.0)

** 数据库迁移**

迁移是同步对模型所做的更改(添加字段,删除模型等)

  • 生成迁移文件

将models.py文件生成一个中间文件,并保存在migrations文件夹中

python manage.py makemigrations
  • 执行迁移脚本
python manage.py migrate

将migrations目录中的中间文件同步回数据库
在这里插入图片描述
在这里插入图片描述
迁移后的数据库

(达内教育学习笔记)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

银行上班的法学程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值