django 提供了乙個用於分頁的paginator 物件,下面簡單介紹下paginator 物件
paginator 物件的匯入:
from django.core.paginator import paginator
paginator 物件用法:
paginator(object_list, per_page, orphans=0, allow_empty_first_page=true)
object_list:
改引數必須是列表,元祖,queryset 物件 或者物件有count() 或者__len__()的方法:
per_page:
每頁顯示的數量
orphans:
這個引數用於當最後一頁顯示的數量小於或者等於 orphans 的數值時,最後一頁顯示的資料會被放到前一頁顯示.
allow_empty_first_page:
是否允許為object_list 為空
paginator方法:
paginator.get_page(number)
django 2.0 以上的版本,此方法返回乙個page物件,如果number不是乙個數字,返回第一頁,如過number大於總頁數了,返回最後一頁
paginator.page(number)
返回page物件,如果給的numbe引數不存在,將丟擲異常invalidpage
paginator屬性:
paginator.count
資料object_list總條數,
計算時首先會呼叫傳入的object_list 的count方法如果object_list 沒有count() 方法 會呼叫len(object_list) 方法
paginator.num_pages
返回總頁數
paginator.page_range
返回頁數的range物件
page 物件的用法
通常不需要自己建立page 物件,通過paginator.get_page 或者 paginator.page()去建立
方法:
1)page.has_next()
返回true
2)page.has_previous()
3) page.next_page_number()
屬性:
1) page.object_list
返回此頁的物件列表
2) page.number
返回此頁的頁碼,
3) page.paginator
返回關聯的paginatior 物件
下面使用paginator 物件在類檢視中實現乙個通用的分頁方法
# django version 2.0
django 實現分頁功能
分頁效果 檢視 1 coding utf 8 2 from django.shortcuts import render,get object or 404 3 from django.core.paginator import paginator,pagenotaninteger,emptypag...
輕鬆實現Django分頁
pip install djangorestframework安裝csrf第三方庫之後,我們就可以使用自帶分頁器paginator來進行內容的分頁 如果取不到分頁物件時,設定頁碼為1 page int request.get.get page 1 取分頁物件,orders為需要分頁的物件,一般為mo...
django裡實現分頁
最近忙完手頭的工作,剛好有時間,便嘗試搗鼓c 上面wpf的開發,並用prism來實現mvvm的結構。想想自己已經接近40,卻還在搗鼓 有時候覺得這個似乎不太真實。可是軟體開發一直是自己的業餘愛好,再加上自己的工廠裡一直都要使用,於是還是把業餘時間投入了進去,不管這些時間值得與否,我還是想在csdn上...