1.13条必知必会

<> all():                 查询所有结果

<> filter(**kwargs):      它包含了与所给筛选条件相匹配的对象

<> get(**kwargs):         返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误。

<> exclude(**kwargs):     它包含了与所给筛选条件不匹配的对象

<> values(*field):        返回一个ValueQuerySet——一个特殊的QuerySet,运行后得到的并不是一系列model的实例化对象,而是一个可迭代的字典序列

<> values_list(*field):   它与values()非常相似,它返回的是一个元组序列,values返回的是一个字典序列

<> order_by(*field):      对查询结果排序

<> reverse():             对查询结果反向排序,请注意reverse()通常只能在具有已定义顺序的QuerySet上调用(在model类的Meta中指定ordering或调用order_by()方法)。

<> distinct():            从返回结果中剔除重复纪录(如果你查询跨越多个表,可能在计算QuerySet时得到重复的结果。此时可以使用distinct(),注意只有在PostgreSQL中支持按字段去重。)

<> count():              返回数据库中匹配查询(QuerySet)的对象数量。

<> first():              返回第一条记录

<> last():               返回最后一条记录

<> exists():             如果QuerySet包含数据,就返回True,否则返回False

2.

 """

  ORM小练习

  """

  import os

  if __name__ == '__main__':
#加载Djang00项目的配置信息
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ormday69.settings")
#导入Django,并启动Django项目
import django
django.setup() from app01 import models
#查询所有的人
ret = models.Person.objects.all()
print(ret)
#get查询
ret = models.Person.objects.get(name="小黑")
print(ret)
#filter
ret = models.Person.objects.filter(id=)#不存在返回一个空的QuerySet,不会报错
print(ret)
# 就算查询的结果只有一个,返回的也是QuerySet,我们要用索引的方式取出第一个元素
ret = models.Person.objects.filter(id=)[]
print(ret)
print("exclude".center(,"*"))
#exclude
ret = models.Person.objects.exclude(id=)
print(ret)
print("values".center(,'*'))
#values 返回一个QuerySet对象,里面都是字典。不写字段名,默认查询所有的字段
ret = models.Person.objects.values("name","birthday")
print(ret)
print("values_lisst".center(,'*'))
#values 返回一个QuerySet对象,里面都是元组。不写字段名,默认查询所有的字段
ret = models.Person.objects.values_list("name","birthday")
print(ret)
print("order_by".center(, '*'))
#order_by按照指定的字段排序
ret = models.Person.objects.all().order_by("birthday")
print(ret)
print("reverse".center(, '*'))
# reverse 将一个有序的QuerySet 反转顺序
#对有序的QuerySet才能调用reverse
ret = models.Person.objects.all().order_by("birthday").reverse()
print(ret)
print("first".center(, '*'))
#first 返回QuerySet中的第一个对象
ret = models.Person.objects.all().first()
print(ret)
print("last".center(, '*'))
# last 返回QuerySet中的最后一个对象
ret = models.Person.objects.all().last()
print(ret)
print("exists".center(, '*'))
# exists 判断表里面有没有数据
ret = models.Person.objects.exists()
print(ret)

参考人莱河:https://www.cnblogs.com/xudj/p/10486505.html

13条必知必会&&测试的更多相关文章

  1. 测试脚本配置、ORM必知必会13条、双下划线查询、一对多外键关系、多对多外键关系、多表查询

    测试脚本配置 ''' 当你只是想测试django中的某一个文件内容 那么你可以不用书写前后端交互的形式而是直接写一个测试脚本即可 脚本代码无论是写在应用下的test.py还是单独开设py文件都可以 ' ...

  2. django基础之day04,必知必会13条,双下划线查询,字段增删改查,对象的跨表查询,双下划线的跨表查询

    from django.test import TestCase # Create your tests here. import os import sys if __name__ == " ...

  3. Django ORM 操作 必知必会13条 单表查询

    ORM 操作 必知必会13条 import os # if __name__ == '__main__': # 当前文件下执行 os.environ.setdefault('DJANGO_SETTIN ...

  4. 使用admin的步骤、必知必会13条、单表的双下划线、外键的操作、多对多的操作:

    MVC M: model 模型 与数据库交互 V: view 视图 HTML C:controller 控制器 流程 和 业务逻辑 MTV M:model ORM T:template 模板 HTML ...

  5. Django框架之第六篇(模型层)--单表查询和必知必会13条、单表查询之双下划线、Django ORM常用字段和参数、关系字段

    单表查询 补充一个知识点:在models.py建表是 create_time = models.DateField() 关键字参数: 1.auto_now:每次操作数据,都会自动刷新当前操作的时间 2 ...

  6. SQL 必知必会

    本文介绍基本的 SQL 语句,包括查询.过滤.排序.分组.联结.视图.插入数据.创建操纵表等.入门系列,不足颇多,望诸君指点. 注意本文某些例子只能在特定的DBMS中实现(有的已标明,有的未标明),不 ...

  7. 《MySQL必知必会》[01] 基本查询

    <MySQL必知必会>(点击查看详情) 1.写在前面的话 这本书是一本MySQL的经典入门书籍,小小的一本,也受到众多网友推荐.之前自己学习的时候是啃的清华大学出版社的计算机系列教材< ...

  8. mysql必知必会

    春节放假没事,找了本电子书mysql必知必会敲了下.用的工具是有道笔记的markdown文档类型. 下面是根据大纲已经敲完的章节,可复制到有道笔记的查看,更美观. # 第一章 了解SQL## 什么是S ...

  9. 《MySQL必知必会》整理

    目录 第1章 了解数据库 1.1 数据库基础 1.1.1 什么是数据库 1.1.2 表 1.1.3 列和数据类型 1.1.4 行 1.1.5 主键 1.2 什么是SQL 第2章 MySQL简介 2.1 ...

随机推荐

  1. Django项目:CRM(客户关系管理系统)--34--26PerfectCRM实现King_admin自定义排序

    ordering = ['-qq'] #自定义排序,默认'-id' #base_admin.py # ————————24PerfectCRM实现King_admin自定义操作数据———————— f ...

  2. Django项目:CRM(客户关系管理系统)--32--24PerfectCRM实现King_admin自定义操作数据

    #admin.py # ————————01PerfectCRM基本配置ADMIN———————— from django.contrib import admin # Register your m ...

  3. HTML+JS---限制表单多次提交

    限制表单多次提交: 表单只能提交一次 function check_form_data(){ $("#once_submit").attr("disabled" ...

  4. Java review-basic5

    1. How would you write a socket client/server in Java The server DateServer.java package edu.lmu.cs. ...

  5. 使用Jedis操作Redis-使用Java语言在客户端操作---对Sorted-Sets的操作

    //对Sorted-Sets操作 /** * Sorted-Sets和Sets类型极为相似,它们都是字符串的集合,都不允许重复的成员出现在一个Set中. * 它们之间的主要差别是Sorted-Sets ...

  6. Django 创建web项目之HelloWorld

    Django.Flask.Tornado并称为python WEB三大框架.Diango是一个开源的web应用框架,具有开发速度快的特点.同时因为过度封装,具有性能低的特点. 创建Django项目,启 ...

  7. 如何在TypeScript中使用JS类库

    使用流程 1.首先要清除类库是什么类型,不同的类库有不同的使用方式 2.寻找声明文件 JS类库一般有三类:全局类库.模块类库.UMD库.例如,jQuery是一种UMD库,既可以通过全局方式来引用,也可 ...

  8. linux实时系统监控工具mpstat

    mpstat (RHEL5默认不安装) mpstat是MultiProcessor Statistics的缩写,是实时系统监控工具.其报告与CPU的一些统计信息,这些信息存放在/proc/stat文件 ...

  9. 定时任务 $ ls /etc/cron* + cat$ for user in $(cat /etc/passwd | cut -f1 -d:); do crontab -l -u $user; done

    是否有某个定时任务运行过于频繁? 是否有些用户提交了隐藏的定时任务? 在出现故障的时候,是否正好有某个备份任务在执行?

  10. 【react】react-bookManager

    作者可能是本意想要做一个图书管理系统,不过添加书籍的时候报错,所以简单的页面我们简单的看看 先上github地址:https://github.com/hesisi/react-bookManager ...