使用Django的ORM操作的時候,想要獲取本條,上一條,下一條。
創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供恩陽網(wǎng)站建設(shè)、恩陽做網(wǎng)站、恩陽網(wǎng)站設(shè)計、恩陽網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、恩陽企業(yè)網(wǎng)站模板建站服務(wù),十年恩陽做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。初步的想法是寫3個ORM,3個ORM如下:
本條:models.Obj.objects.filter(id=n).first()
下一條:models.Obj.objects.filter(id__gt=n).all().order_by("id").first()
【注1:大于本條的第一個即是下一條】
【注2:因為默認(rèn)的asc排序,可以簡化后面的】
上一條:models.Obj.objects.filter(id__lt=n).all().ordery_by("-id").first()
【注:小于本條的一定要是最后一條數(shù)據(jù)才是下一條,不然取出來的永遠(yuǎn)是第一條】
【注:有l(wèi)ast方法后面3個方法可以用.last()替代】
后面簡化了一下:
objs=models.Obj.objects.all().order_by("id")
本條:objs.filter(id=n).first()
下一條:objs.filter(id__gt=n).first()
上一條:objs.filter(id__lt=n).all().ordery_by("-id").first()
【注:有l(wèi)ast方法的可以直接objs.filter(id__lt=n).last()了】
以上這篇Django獲取該數(shù)據(jù)的上一條和下一條方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持創(chuàng)新互聯(lián)。
分享標(biāo)題:Django獲取該數(shù)據(jù)的上一條和下一條方法-創(chuàng)新互聯(lián)
文章地址:http://aaarwkj.com/article26/dshsjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、品牌網(wǎng)站設(shè)計、網(wǎng)站收錄、網(wǎng)站內(nèi)鏈、建站公司、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容