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 10 Python
探寻python多线程ctrl+c退出问题解决方案
Oct 23 Python
Python 对象中的数据类型
May 13 Python
Python数据分析matplotlib设置多个子图的间距方法
Aug 03 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
Dec 02 Python
在pycharm中使用git版本管理以及同步github的方法
Jan 16 Python
PYQT5设置textEdit自动滚屏的方法
Jun 14 Python
基于Python函数和变量名解析
Jul 19 Python
Python的bit_length函数来二进制的位数方法
Aug 27 Python
利用Python过滤相似文本的简单方法示例
Feb 03 Python
Jupyter安装拓展nbextensions及解决官网下载慢的问题
Mar 03 Python
基于Python实现对比Exce的工具
Apr 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+AJAX传送中文会导致乱码的问题的解决方法
2008/09/08 PHP
PHP文件注释标记及规范小结
2012/04/01 PHP
ThinkPHP CURD方法之limit方法详解
2014/06/18 PHP
CentOS下搭建PHP环境与WordPress博客程序的全流程总结
2016/05/07 PHP
laravel请求参数校验方法
2019/10/10 PHP
Nigma vs Alliance BO5 第四场2.14
2021/03/10 DOTA
JMenuTab简单使用说明
2008/03/13 Javascript
Cookie 小记
2010/04/01 Javascript
js 全兼容可高亮二级缓冲折叠菜单
2010/06/04 Javascript
20款超赞的jQuery插件 Web开发人员必备
2011/02/26 Javascript
基于JavaScript实现 获取鼠标点击位置坐标的方法
2013/04/12 Javascript
jquery ztree实现模糊搜索功能
2016/02/25 Javascript
Jquery元素追加和删除的实现方法
2016/05/24 Javascript
更靠谱的H5横竖屏检测方法(js代码)
2016/09/13 Javascript
基于Vue.js实现简单搜索框
2020/03/26 Javascript
JavaScript如何一次性展示几万条数据
2017/03/30 Javascript
JS实现简单短信验证码界面
2017/08/07 Javascript
JS监控关闭浏览器操作的实例详解
2017/09/12 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
JS内部事件机制之单线程原理
2018/07/02 Javascript
Vue项目中使用better-scroll实现一个轮播图自动播放功能
2018/12/03 Javascript
JS实现动态添加外部js、css到head标签的方法
2019/06/05 Javascript
python文件操作整理汇总
2014/10/21 Python
学生信息管理系统Python面向对象版
2019/01/30 Python
用Python写一个自动木马程序
2019/09/17 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
2020/05/19 Python
MxNet预训练模型到Pytorch模型的转换方式
2020/05/25 Python
python爬取股票最新数据并用excel绘制树状图的示例
2021/03/01 Python
一款css实现的鼠标经过按钮的特效
2014/09/11 HTML / CSS
详解使用canvas保存网页为pdf文件支持跨域
2018/11/23 HTML / CSS
美国排名第一的在线葡萄酒商店:Wine.com
2016/09/07 全球购物
实习生个人的自我评价
2013/12/08 职场文书
2014年扶贫工作总结
2014/11/18 职场文书
司机岗位职责
2015/02/04 职场文书
基层医务人员三严三实心得体会
2016/01/05 职场文书
深度学习小工程练习之垃圾分类详解
2021/04/14 Python