增加数据

第一种方式

  1. def index(request):
  2. #创建记录方式1
  3. #实例化要添加的记录(对象)
  4. student_obj = models.Student(
  5. name='dazhuang',
  6. age=23,
  7. )
  8. #自动刷新并存储到数据库
  9. student_obj.save()
  10. return render(request,'index.html')

第二种方式 常用方法

  1. def index(request):
  2. #创建记录方式2
  3. # new_obj为返回值,返回这个类的对象 (model对象)
  4. new_obj = models.Student.objects.create(name='xiaozhuang',age=5)
  5. print(new_obj.name)
  6. print(new_obj.age)
  7. return render(request,'index.html')

第三种方式 批量创建

  1. def index(request):
  2. #创建方式3 批量创建
  3. objs = []
  4. for i in range(20):
  5. obj = models.Student(
  6. name='xiangxi%s'%i,
  7. age = 10+i,
  8. )
  9. objs.append(obj)
  10. models.Student.objects.bulk_create(objs)

第四种方式 update_or_create

有就更新,没有就创建

  1. models.Student.objects.update_or_create(
  2. name='xiangxi0',
  3. defaults={
  4. 'age':48,
  5. }
  6. )

删除数据

通过model对象或queryset对象调用delete方法

  1. def delete(request):
  2. # models.Student.objects.get(id=2).delete()
  3. models.Student.objects.filter(name='xiaozhuang').delete()
  4. return render(request,'index.html')

简单查询数据

获取全部数据

利用all()方法

  1. def select(request):
  2. # 查询所有记录 如果不是一条数据,则返回一个结果集 类似于列表
  3. all_objs = models.Student.objects.all()
  4. print(all_objs)
  5. for i in all_objs:
  6. print(i.name)
  7. return render(request,'index.html')

条件查询 filter

查询条件作为参数传入即可。

查到返回结果,否则反回空列表(QuerySet对象)

  1. def select(request):
  2. #条件查询 查询id等于3的数据
  3. objs = models.Student.objects.filter(id=3)
  4. print(objs)
  5. return render(request,'index.html')

条件查询 get

与filter类似,但返回的是model对象。get方法有且必须只有一条记录

更新数据

修改数据只能是queryset对象,不能是model对象

  1. def update(request):
  2. models.Student.objects.filter(id=1).update(age=38)
  3. return render(request,'index.html')

二、Django学习之增删改查的更多相关文章

  1. GZFramwork数据库层《二》单据表增删改查(自动生成单据号码)

    运行效果: 使用代码生成器(GZCodeGenerate)生成tb_EmpLeave的Model 生成器源代码下载地址: https://github.com/GarsonZhang/GZCodeGe ...

  2. Django ORM 数据库增删改查

    Django ORM 数据库增删改查 增 # 创建.增加数据(推荐) models.UserInfo.objects.create(username=') # 创建.增加数据 dic = {'} mo ...

  3. 【EF6学习笔记】(二)操练 CRUD 增删改查

    本篇原文链接: Implementing Basic CRUD Functionality 说明:学习笔记参考原文中的流程,为了增加实际操作性,并能够深入理解,部分地方根据实际情况做了一些调整:并且根 ...

  4. Django数据库操作(增删改查)

    Django数据库操作(增删改查) 创建数据库中的一个表 class Business(models.Model): #自动创建ID列 caption = models.CharField(max_l ...

  5. 初入码田--ASP.NET MVC4 Web应用开发之二 实现简单的增删改查

    初入码田--ASP.NET MVC4 Web应用之创建一个空白的MVC应用程序 初入码田--ASP.NET MVC4 Web应用开发之一 实现简单的登录 2016-07-29  一.创建M002Adm ...

  6. yii2-basic后台管理功能开发之二:创建CRUD增删改查

    昨天实现了后台模板的嵌套,今天我们可以试着创建CRUD模型啦 刚开始的应该都是“套用”,不再打算细说,只把关键的地方指出来. CRUD即数据库增删改查操作.可以理解为yii2为我们做了一个组件,来实现 ...

  7. CoreData的简单使用(二)数据的增删改查,轻量级的版本迁移

    上一篇中我们已经使用CoreData创建了一个SQLite数据库 CoreData的简单使用(一)数据库的创建 现在对数据库进行数据的CRUD(增删改查) 1.Data Model 的设置 创建一个D ...

  8. Python(二)列表的增删改查

    一,列表的增删改查 列表中增加元素: 1,从列表的末尾增加一个元素:append("") 2,从列表中插入一个元素:insert(下标位置,插入的元素) 合并列表: 1,name. ...

  9. HTML DOM(二):节点的增删改查

    上一篇讲述了DOM的基本知识,从其得知,在DOM眼中,HTML的每个成分都可以看作是节点(文档节点.元素节点.文本节点.属性节点.注释节点,其中,属性节点是属于元素节点),本篇的内容就是通过DOM对这 ...

随机推荐

  1. $CF24D\ Broken Robot\ DP+$高斯消元

    Luogu Description 你收到的礼物是一个非常聪明的机器人,行走在一块长方形的木板上.不幸的是,你知道它是坏的,表现得相当奇怪(随机).该板由n行和m列的单元格组成.机器人最初是在i行和j ...

  2. Docker Swarm Mode 入门实践

    本文来源 翻译并总结官方文档,添加自定义示例,参考自Docker 19.03版本官方文档 未来可能归档为:https://docs.docker.com/v19.03/ 2020.01.03为http ...

  3. 小小知识点(二十四)什么是5G

    转自 https://www.ifanr.com/1149419 一个简单且神奇的公式 今天的故事,从一个公式开始讲起.这是一个既简单又神奇的公式.说它简单,是因为它一共只有 3 个字母.而说它神奇, ...

  4. Java小项目之:五子棋,你下棋下得过电脑吗?

    Java小项目之:五子棋,你下棋下得过电脑吗? Java五子棋功能要求: 1.创建窗口和设计一个棋盘界面 2.实现鼠标点击,棋子出现,黑白棋轮流下 3.能够判断五子相连输赢 4.添加重新开始,悔棋,退 ...

  5. 快速开发一个npm包(轮子)

    动机 很多人都想写一个自己的轮子,可是开始动手的时候你总会遇到以下问题 一个基本的 js 库应该如何编写 基本的前端项目都要哪些文件 又要怎么打包发布到 npm 上 你的 es6 语法如何才能让别人识 ...

  6. CF1200E Compress Words | 字符串hash

    传送门 Examples input 1 5 I want to order pizza output 1 Iwantorderpizza input 2 5 sample please ease i ...

  7. openjudge 7622 求排列的逆序数(归并)

    7622:求排列的逆序数 总时间限制:  1000ms   内存限制:  65536kB 描述 在Internet上的搜索引擎经常需要对信息进行比较,比如可以通过某个人对一些事物的排名来估计他(或她) ...

  8. vue 项目中运用到的插件 或者依赖安装

    1.安装less ,less-load npm install less less-loader --save-dev 2.安装vux npm install vux --save npm insta ...

  9. VScode(一):C/C++ & MinGW & Code Runner

    目录 1 VScode配置安装 2 MinGW配置安装 2.1 MinGW下载安装 2.2 MinGW环境配置 3 VScode编译C/C++ 3.1 扩展插件安装 3.2 项目配置 3.2.1 配置 ...

  10. Scala实践4

    一.数组 在Scala中,用()来访问元素,数组声明的语法格式如下 : var z:Array[String] = new Array[String](3) 或 var z = new Array[S ...