日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

django filter查询多选_Django:使用filter的pk进行多值查询操作

發布時間:2024/9/18 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 django filter查询多选_Django:使用filter的pk进行多值查询操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

由于想要做收藏夾的功能,所以希望能夠一次性查詢出所有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

這里要是用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"

都是不行的。

以上這篇Django:使用filter的pk進行多值查詢操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持隨便開發網。

總結

以上是生活随笔為你收集整理的django filter查询多选_Django:使用filter的pk进行多值查询操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。