today,我們實現分頁的功能
分頁的實現不僅提高了使用者體驗,還是減輕資料庫讀取資料的壓力
django提供了一些類來幫助您管理分頁資料
from django.core.paginator import paginator
#獲取要分頁的查詢集 blog是乙個model物件
blogs_all_list=blog.objects.all()
#例項化乙個物件每10頁進行分頁
paginator=paginator(blogs_all_list,10)
#獲取get請求page的值,後面的1是預設代表預設get請求到的page值是1
page_num = request.get.get('page', 1)
#根據分頁顯示對應頁碼 獲取查詢集對應的範圍
page_of_blogs=paginator.get_page(page_num)
傳給模板檔案是page_of_blogs 是乙個page物件,可以理解成只含有10個查詢集中的物件的集合
當前頁高亮**以下 page_of_blogs縮寫成page**
paginator 類中常用的屬性 即page.paginator
page.paginator.count
返回當前要分頁物件的具體個數
page.paginator.num_pages
返回分頁的2總頁數。
page物件常用的方法即page_of_blogs 我們可以在檢視中獲取
page.has_next()
page.has_previous()
page.has_other_pages()
page.next_page_number()
page.previous_page_number()
page.start_index()
返回頁面上第乙個物件的從1開始的索引,相對於分頁器列表中的所有物件。例如,當為每頁包含2個物件的5個物件的列表進行分頁時,start_index()將返回第二個頁面 3。
page.end_index()
返回頁面上最後乙個物件的從1開始的索引,相對於分頁器列表中的所有物件。例如,當為每頁包含2個物件的5個物件的列表進行分頁時,end_index()將返回第二個頁面 4。
不要過多頁碼選擇,影響頁面布局,只顯示當前頁周圍兩個並可以直接跳轉第一頁和最後一頁
具體**不展示
django 分頁功能
django 分頁功能 django自帶了paginator,功能有一定侷限,使用django pure pagination功能更為強大 github傳送門 1 使用pip源安裝 pip install django pure pagination pure pagination 3 在setti...
django分頁功能
採用django自帶的paginator功能 from django.core.paginator import paginator food foodinfo.objects.filter food name contains searchstr pag paginator food,25 每頁顯...
django 實現分頁功能
分頁效果 檢視 1 coding utf 8 2 from django.shortcuts import render,get object or 404 3 from django.core.paginator import paginator,pagenotaninteger,emptypag...