中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Django中如何使用filter的pk進行多值查詢操作

發布時間:2020-07-16 16:07:38 來源:億速云 閱讀:227 作者:小豬 欄目:開發技術

這篇文章主要為大家展示了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<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進行多值查詢操作的內容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

深泽县| 兴义市| 彭水| 海安县| 个旧市| 奇台县| 青河县| 凌海市| 米脂县| 濮阳市| 卢湾区| 和政县| 巨野县| 隆德县| 鹤壁市| 武乡县| 新密市| 监利县| 瓮安县| 黄骅市| 密山市| 岱山县| 繁峙县| 保亭| 汉寿县| 庆云县| 左云县| 凤庆县| 蕉岭县| 抚顺县| 泾阳县| 南昌县| 中宁县| 通榆县| 时尚| 肥西县| 南乐县| 咸阳市| 昌平区| 逊克县| 梨树县|