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 相关文章推荐
python中正则表达式的使用详解
Oct 17 Python
详解Python中time()方法的使用的教程
May 22 Python
Python实战小程序利用matplotlib模块画图代码分享
Dec 09 Python
python使用tensorflow保存、加载和使用模型的方法
Jan 31 Python
Python 普通最小二乘法(OLS)进行多项式拟合的方法
Dec 29 Python
浅谈python的输入输出,注释,基本数据类型
Apr 02 Python
元组列表字典(莫烦python基础)
Apr 03 Python
python错误调试及单元文档测试过程解析
Dec 19 Python
python shapely.geometry.polygon任意两个四边形的IOU计算实例
Apr 12 Python
Python内置函数property()如何使用
Sep 01 Python
python 如何快速复制序列
Sep 07 Python
解决virtualenv -p python3 venv报错的问题
Feb 05 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分页函数代码(简单实用型)
2010/12/02 PHP
基于php-fpm的配置详解
2013/06/03 PHP
PHP实现对文本数据库的常用操作方法实例演示
2014/07/04 PHP
windows8.1下Apache+Php+MySQL配置步骤
2015/10/30 PHP
Yii2框架加载css和js文件的方法分析
2019/05/25 PHP
laravel框架上传图片实现实时预览功能
2019/10/14 PHP
js分解url参数(面向对象-极简主义法应用)
2012/08/09 Javascript
jqgrid 编辑添加功能详细解析
2013/11/08 Javascript
jsp网页搜索结果中实现选中一行使其高亮
2014/02/17 Javascript
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
深入理解JS DOM事件机制
2016/08/06 Javascript
微信小程序 Storage API实例详解
2016/10/02 Javascript
微信小程序 简单教程实例详解
2017/01/13 Javascript
Vuex 快速入门(简单易懂)
2018/09/20 Javascript
jQuery.validate.js表单验证插件的使用代码详解
2018/10/22 jQuery
jQuery实现的简单日历组件定义与用法示例
2018/12/24 jQuery
JQuery常见节点操作实例分析
2019/05/15 jQuery
layui 数据表格 点击分页按钮 监听事件的实例
2019/09/02 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
2020/07/28 Javascript
解决python中 f.write写入中文出错的问题
2018/10/31 Python
设置python3为默认python的方法
2018/10/31 Python
Django如何简单快速实现PUT、DELETE方法
2019/07/24 Python
python用requests实现http请求代码实例
2019/10/31 Python
Anconda环境下Vscode安装Python的方法详解
2020/03/29 Python
python 实现&quot;神经衰弱&quot;翻牌游戏
2020/11/09 Python
黑猩猩商店:The Chimp Store
2020/02/12 全球购物
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
2014/07/27 面试题
营销与策划应届生求职信
2013/11/04 职场文书
求职信模版
2013/11/30 职场文书
数学检讨书1000字
2014/02/24 职场文书
上班迟到检讨书范文
2015/05/06 职场文书
银行安全保卫工作总结
2015/08/10 职场文书
信息技术研修心得体会
2016/01/08 职场文书
浅谈PHP7中的一些小技巧
2021/05/29 PHP
深入理解以DEBUG方式线程的底层运行原理
2021/06/21 Java/Android
Mysql数据库按时间点恢复实战记录
2021/06/30 MySQL