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

  创建数据库中的一个表

  1. class Business(models.Model):
  2. #自动创建ID列
  3. caption = models.CharField(max_length=32)
  4. code = models.CharField(max_length=32)

1.增加

  方法一

  1. models.Business.objects.create(caption='市场部',code='')

  方法二

  1. obj = models.Business(caption='市场部',code='')
  2. obj.save()

  方法三

  1. dic = {'caption':'市场部','code':''}
  2. models.Business.objects.create(**dic)

2.删除

  1. models.Business.objects.filter(id=1).delete()
  1. 查询方法见下方查询

3.更改

  方法一

  1. models.Business.objects.filter(id=1).update(code='hello')

  方法二

  1. obj = models.Business.objects.get(id=1)
  2. obj.code = 'hello'
  3. obj.save()

查询方法见下方查询


4.查询

  获取全部

  1. v1 = models.Business.objects.all() #QuerySet类型,内部元素都是对象

  获取指定

  1. v2 = models.Business.objects.all().values("id","caption") #QuerSet类型,内部元素都是字典
  2. v3 = models.Business.objects.all().values_list('id','caption') #QuerySet类型,内部元素都是元组
    v4 = models.Business.objects.get(id=1) #获取一个队象,如果不存在就报错
    v5 = models.Business.objects.filter(id=1) #QuerySet类型,内部元素是对象,id__gt=1获取所有id>1的数据,id__lt=10,获取所有id<10的数据
    v6 = models.Business.objects.filter(id=1).first() #返回对象或者None

  应用实例

  1. def business(request):
  2. v1 = models.Business.objects.all()
  3. v2 = models.Business.objects.all().values("id","caption")
  4. v3 = models.Business.objects.all().values_list('id','caption')
  5. return render(request,"business.html",{"v1":v1,"v2":v2,"v3":v3})

business函数

  1. url(r'^business$',views.business)

URL

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Document</title>
  6. </head>
  7. <body>
  8. <ul>
  9. <h1>ALL</h1>
  10. {% for row in v1 %}
  11. <li>{{row.id}}-{{row.caption}}-{{row.code}}</li>
  12. {% endfor %}
  13. </ul>
  14. <ul>
  15. <h1>all.values</h1>
  16. {% for row in v2 %}
  17. <li>{{row.id}}-{{row.caption}}</li>
  18. {% endfor %}
  19. </ul>
  20. <ul>
  21. <h1>all.values_list</h1>
  22. {% for row in v3 %}
  23. <li>{{row.0}}-{{row.1}}</li>
  24. {% endfor %}
  25. </ul>
  26. </body>
  27. </html>

business.html

Django数据库操作(增删改查)的更多相关文章

  1. django数据库操作-增删改查-多对多关系以及一对多(外键)关系

    一.一对多(外键) 例子:一个作者对应多本书,一本书只有一个作者 model代码: class Person(models.Model); name = models.CharField('作者姓名' ...

  2. 转: django数据库操作-增删改查-多对多关系以及一对多(外键)关系

    原文链接:http://blog.csdn.net/u010271717/article/details/22044415 一.一对多(外键) 例子:一个作者对应多本书,一本书只有一个作者 model ...

  3. Yii数据库操作增删改查-[增加\查询\更新\删除 AR模式]

    在Yii的开发中常常需要去使用Yii的增删改查方法,这些方法又可以多次变化和组合,带来全方位的实现对数据库的处理,下面对这些方法做一些简单的整理和梳理,有遗漏或是BUG,敬请指出.灰常感谢!!! 一. ...

  4. Android下数据库操作——增删改查

    Android下数据库第一种方式增删改查     1.创建一个帮助类的对象,调用getReadableDatabase方法,返回一个SqliteDatebase对象     2.使用SqliteDat ...

  5. django数据库的增删改查

    正常启动服务安装数据库cmd命令:python manage.py makemigrations 创建用户 在pxm里面会有一个py文件..这就是生成了表结构cmd命令:python manage.p ...

  6. spring框架学习之--数据库操作增删改查

    基于spring的NamedParameterJdbcTemplate操作数据库 首先在 resources 文件夹下添加数据库配置文件jdbc.properties 配置常用的数据库信息 consu ...

  7. SpringBoot 数据库操作 增删改查

    1.pom添加依赖 <!--数据库相关配置--> <dependency> <groupId>org.springframework.boot</groupI ...

  8. django数据库基本操作-增删改查(tip)-基本

    补充:django外键保存 #外键保存 form_data = Form_Data() project, is_created = Project_Name.objects.get_or_create ...

  9. Yii2.0数据库操作增删改查详解

    1.简单查询: one(): 根据查询结果返回查询的第一条记录. all(): 根据查询结果返回所有记录. count(): 返回记录的数量. sum(): 返回指定列的总数. average():  ...

随机推荐

  1. 服务器Hadoop+Hive搭建

    出于安全稳定考虑很多业务都需要服务器服务器Hadoop+Hive搭建,但经常有人问我,怎么去选择自己的配置最好,今天天气不错,我们一起来聊一下这个话题. Hadoop+Hive环境搭建 1虚拟机和系统 ...

  2. 博弈论之Nim游戏

    Nim游戏是组合游戏(Combinatorial Games)的一种,属于“Impartial Combinatorial Games”(以下简称ICG). 通常的Nim游戏的定义是这样的:有若干堆石 ...

  3. sping 框架学习之——初始篇

    sping框架学习: 1,什么是spring框架 spring是J2EE应用程序框架,是轻量级的IoC和AOP的容器框架,主要是针对javaBean的生命周期进行管理的轻量级容器,可以单独使用,也可以 ...

  4. 第五章之S5PV210将u-boot.bin从SD卡中搬到DDR中

    1,在完成上一节的memory初始化后,接下来在arch/arm/cpu/armv7/start.S的160行:如下图 2,跳转到arch/arm/lib/board.c下的board_init_f函 ...

  5. cn_office2016

    office 2016是可用激活器激活的,但是激活office 365就有点困难了. 附上office 2016下载地址:http://pan.baidu.com/s/1pLTqPyr 破解机:htt ...

  6. Python 发展历史

    1. Python发展历史 起源 Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.然而,尽管他算得上是一位数学家,但他更 ...

  7. golang 之验证码api

    知识一:如何返回一个json数据? 先定义一个结构体ResponseData,2个参数,并返回的是json数据,key就是json后定义的名称 type ResponseData struct { S ...

  8. NYOJ 289 苹果(01背包)

    苹果 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 ctest有n个苹果,要将它放入容量为v的背包.给出第i个苹果的大小和价钱,求出能放入背包的苹果的总价钱最大值. ...

  9. 疯狂的采药 洛谷p1616

    题目背景 此题为NOIP2005普及组第三题的疯狂版. 题目描述 LiYuxiang是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的医师为师.医师为了判断他的资质,给他 ...

  10. ThinkSNS+ alpha.2 版本发布,功能抢先看!【社交系统研发日记六】

    今天的研发日记,我们不讲技术,我们来看看,社交系统TS+从今天开始全面内测开始,都发布了什么功能. 其实,alpha.1 早上打的 tag ,晚上因为增加了两个核心功能,所以又打了 alpha.2 t ...