Django:使用filter的pk进行多值查询操作


Posted in Python onJuly 15, 2020

由于想要做收藏夹的功能,所以希望能够一次性查询出所有id的对象,查看文档,找到了如下方法

pk是primary key的缩写,顾名思义pk_in就是primary key在某一个范围内,具体操作(以自带的User为例):

User.objects.filter(pk__in=[1,2,3])

这样就可以去除id为1,2,3的User的对象了,很方便

注意是两个下划线

另外,还要pk__gt和pl_lt,都用于筛选范围的

User.objects.filter(pk__gt=10)

意味着将要得到pk(一般也就是说id)大于10的对象(greater)

User.objects.filter(pk__lt=10)

意味着将要得到pk小于10的对象

补充知识:Django 比较同一个model中的两个字段,进行条件过滤

django orm中怎么样比较同一个模型中的两个字段来过滤记录呢?

例如一个合同字段,结束日期和终止日期的比较我们用sql很容易实现。

select *from contracts where

contract_stop_time<end_time

这里要是用db模块中的F 库才行 F object

from django.db.models import F
from contracts.models import Contracts
contracts = Contracts.objects.filter(contract_stop_time__lt=F('end_time'))

如果直接写成

Contracts.objects.filter(contract_stop_time__lt=end_time)

或者

Contracts.objects.filter("contract_stop_time"<"end_time")

都是不行的。

以上这篇Django:使用filter的pk进行多值查询操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
go和python调用其它程序并得到程序输出
Feb 10 Python
python实现爬取千万淘宝商品的方法
Jun 30 Python
python实现字符串连接的三种方法及其效率、适用场景详解
Jan 13 Python
Python存取XML的常见方法实例分析
Mar 21 Python
Linux下python3.7.0安装教程
Jul 30 Python
python中强大的format函数实例详解
Dec 05 Python
python实现求特征选择的信息增益
Dec 18 Python
在Pandas中处理NaN值的方法
Jun 25 Python
Python3 全自动更新已安装的模块实现
Jan 06 Python
Python selenium模拟手动操作实现无人值守刷积分功能
May 13 Python
在pytorch中动态调整优化器的学习率方式
Jun 24 Python
django inspectdb 操作已有数据库数据的使用步骤
Feb 07 Python
django models里数据表插入数据id自增操作
Jul 15 #Python
python报错: 'list' object has no attribute 'shape'的解决
Jul 15 #Python
解决运行出现'dict' object has no attribute 'has_key'问题
Jul 15 #Python
解决运行django程序出错问题 'str'object has no attribute'_meta'
Jul 15 #Python
解决导入django_filters不成功问题No module named 'django_filter'
Jul 15 #Python
django rest framework使用django-filter用法
Jul 15 #Python
Django REST 异常处理详解
Jul 15 #Python
You might like
PHP学习之输出字符串(echo,print,printf,print_r和var_dump)
2011/04/17 PHP
phpExcel导出大量数据出现内存溢出错误的解决方法
2013/02/28 PHP
php使用json_encode对变量json编码
2014/04/07 PHP
Laravel 中获取上一篇和下一篇数据
2015/07/27 PHP
javascript 面向对象全新理练之原型继承
2009/12/03 Javascript
基于Asp.net与Javascript控制的日期控件
2010/05/22 Javascript
MooBox 基于Mootools的对话框插件
2012/01/20 Javascript
ejs v9 javascript模板系统
2012/03/21 Javascript
Ext JS 4实现带week(星期)的日期选择控件(实战二)
2013/08/21 Javascript
js的匿名函数使用介绍
2013/12/11 Javascript
js实现匹配时换色的输入提示特效代码
2015/08/17 Javascript
input点击后placeholder中的提示消息消失
2016/01/15 Javascript
JavaScript中的this引用(推荐)
2016/08/05 Javascript
jQuery实现拖拽可编辑模块功能代码
2017/01/12 Javascript
JS前端开发判断是否是手机端并跳转操作(小结)
2017/02/05 Javascript
EasyUI框架 使用Ajax提交注册信息的实现代码
2017/09/27 Javascript
原生js实现随机点餐效果
2019/12/10 Javascript
[15:56]Heroes18_暗影萨满(完美)
2014/10/31 DOTA
用实例说明python的*args和**kwargs用法
2013/11/01 Python
Python并发:多线程与多进程的详解
2019/01/24 Python
PyQt QCombobox设置行高的方法
2019/06/20 Python
Python 图像对比度增强的几种方法(小结)
2019/09/25 Python
Tensorflow实现多GPU并行方式
2020/02/03 Python
python print 格式化输出,动态指定长度的实现
2020/04/12 Python
pycharm无法安装第三方库的问题及解决方法以scrapy为例(图解)
2020/05/09 Python
python+requests接口自动化框架的实现
2020/08/31 Python
python字典按照value排序方法
2020/12/28 Python
Python使用paramiko连接远程服务器执行Shell命令的实现
2021/03/04 Python
澳洲小众品牌的集合网站:BNKR
2018/02/23 全球购物
澳大利亚工具仓库:Tools Warehouse
2018/10/15 全球购物
Android笔试题总结
2014/11/29 面试题
原料仓仓管员岗位职责
2014/07/08 职场文书
2014年个人技术工作总结
2014/12/08 职场文书
教导处教学工作总结
2015/08/12 职场文书
七年级生物教学反思
2016/02/20 职场文书
AngularJS实现多级下拉框
2022/03/25 Javascript