Django笔记:模型层(ORM框架、模型类、增删改查、F和Q对象、Meta类、原生数据库操作)

一、模型层作用和什么是模型

模型层:负责与数据库之间进行通信
模型
在这里插入图片描述

二、使用

1、创建数据库并在Django的setting.py中进行相关设置

在这里插入图片描述
在这里插入图片描述
如下所示
在这里插入图片描述

2、ORM框架

(1)、ORM概念及其优缺点

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)、ORM映射模型

在这里插入图片描述

(3)、模型示例(在创建并连接好的数据库中添加一张表)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、模型类

1、模型类的创建流程

在这里插入图片描述
在这里插入图片描述

2、模型类的字段类型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、字段选项

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
字段选项举例
在这里插入图片描述

4、Meta类(作用:对模型【表,表名等】进行修改)

在这里插入图片描述
在这里插入图片描述

四、ORM基本操作

在这里插入图片描述

1、管理器对象

在这里插入图片描述

2、创建数据

在这里插入图片描述
使用举例
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
***使用Django shell ***
在这里插入图片描述

3、ORM查询操作(若返回值是QuerySet类型,可以通过print(a.query)来查看代码对应的SQL语句)

(1)、基本查询(没有条件的查询)

在这里插入图片描述

(a)、all( )

在这里插入图片描述
在这里插入图片描述

(b)、values( )

在这里插入图片描述

(c)、values_list( )

在这里插入图片描述

(d)、order_by( )

在这里插入图片描述

(2)、条件查询

(a)、filter( )

在这里插入图片描述
在这里插入图片描述

(b)、exclude( )

在这里插入图片描述

(c)、get(条件)

在这里插入图片描述

(d)、查询谓词(更加灵活,可以处理非等值查询)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、更新操作

(1)、更新单个数据

在这里插入图片描述
示例

(2)、批量更新数据

在这里插入图片描述

5、删除操作

(1)、删除单个数据

在这里插入图片描述

(2)、批量删除数据

在这里插入图片描述

(3)、伪删除【推荐】

在这里插入图片描述

6、F对象和Q对象

(1)、F对象:标记字段

在这里插入图片描述
*使用举例
在这里插入图片描述
使用举例
在这里插入图片描述
使用
在这里插入图片描述

(2)、Q对象:与或非

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7、聚合查询

在这里插入图片描述

(1)、整表聚合

在这里插入图片描述
使用举例
在这里插入图片描述
在这里插入图片描述

(2)、分组聚合

在这里插入图片描述
分组聚合实现流程

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

注意:可以与filter()结合实现having条件
在这里插入图片描述

8、原生数据库操作

(1)、原生数据库查询操作

在这里插入图片描述
SQL注入和防止
在这里插入图片描述
在这里插入图片描述

(2)、完全跨过模型类操作数据库

在这里插入图片描述
使用
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值