Diango中的查询集和过滤集

Posted lxmtx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Diango中的查询集和过滤集相关的知识,希望对你有一定的参考价值。

一、查询集和过滤集

all()  返回所有的数据

filter()  返回符合条件的数据

exclude()  过滤掉符合条件的数据

order_by()  排序

values()  一条数据就是一个字典,返回一个列表

get()  返回一个满足条件的对象;如果没有找到符合条件的对象,会引发模型类.DoesNotExist异常;如果找到多个,会引发模型类.MultiObjectsReturned异常

first()  返回查询集中的第一个对象

last()  返回查询集中的最后一个对象

count()  返回当前查询集中的对象个数

exists()  判断查询集中是否有数据,如果有数据返回true,如果没有返回false

 

注意:

  first和last默认情况下可以正常从QuerySet中获取,但是存在隐藏的bug,即可能会出现first和last获取到的是相同的对象,解决方案是手动写排序规则,即先排序再获取。

 

二、实例

 

以上是关于Diango中的查询集和过滤集的主要内容,如果未能解决你的问题,请参考以下文章

Django Newbie - 使用多字段表单,如何消除查询集中的空字段

BigQuery:使用标准 SQL 查询多个数据集和表

Django:从查询集中删除过滤条件

将训练集和测试集的数据除以训练集中的所有主题

从大型数据集中过滤掉记录的最佳方法是什么

如何在查询集中动态设置 Django 过滤器