久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Django:使用filter的pk進(jìn)行多值查詢操作

瀏覽:183日期:2024-09-25 16:46:42

由于想要做收藏夾的功能,所以希望能夠一次性查詢出所有id的對象,查看文檔,找到了如下方法

pk是primary key的縮寫,顧名思義pk_in就是primary key在某一個(gè)范圍內(nèi),具體操作(以自帶的User為例):

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

這樣就可以去除id為1,2,3的User的對象了,很方便

注意是兩個(gè)下劃線

另外,還要pk__gt和pl_lt,都用于篩選范圍的

User.objects.filter(pk__gt=10)

意味著將要得到pk(一般也就是說id)大于10的對象(greater)

User.objects.filter(pk__lt=10)

意味著將要得到pk小于10的對象

補(bǔ)充知識(shí):Django 比較同一個(gè)model中的兩個(gè)字段,進(jìn)行條件過濾

django orm中怎么樣比較同一個(gè)模型中的兩個(gè)字段來過濾記錄呢?

例如一個(gè)合同字段,結(jié)束日期和終止日期的比較我們用sql很容易實(shí)現(xiàn)。

select *from contracts where

contract_stop_time<end_time

這里要是用db模塊中的F 庫才行 F object

from django.db.models import Ffrom contracts.models import Contractscontracts = 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進(jìn)行多值查詢操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Django
相關(guān)文章:
主站蜘蛛池模板: 桐城市| 恩施市| 沁源县| 宣恩县| 调兵山市| 三原县| 屯门区| 革吉县| 蚌埠市| 紫阳县| 五寨县| 桓台县| 灌阳县| 昌平区| 呼玛县| 五华县| 云浮市| 永德县| 中方县| 红原县| 华坪县| 彭水| 榆中县| 乌鲁木齐县| 宜兰县| 东兰县| 简阳市| 姜堰市| 灌南县| 贡觉县| 蓬溪县| 武强县| 阳曲县| 聊城市| 保德县| 河西区| 东山县| 荆门市| 峨山| 广元市| 杂多县|