# 對資料進行分頁
paginator = paginator(skus, 1)
# 獲取第page頁的內容
try:
page = int(page)
except exception as e:
page = 1
if page > paginator.num_pages:
page = 1
# 獲取第page頁的page例項物件
skus_page = paginator.page(page)
# todo: 進行頁碼的控制,頁面上最多顯示5個頁碼
# 1.總頁數小於5頁,頁面上顯示所有頁碼
# 2.如果當前頁是前3頁,顯示1-5頁
# 3.如果當前頁是後3頁,顯示後5頁
# 4.其他情況,顯示當前頁的前2頁,當前頁,當前頁的後2頁
num_pages = paginator.num_pages
if num_pages < 5:
pages = range(1, num_pages+1)
elif page <= 3:
pages = range(1, 6)
elif num_pages - page <= 2:
pages = range(num_pages-4, num_pages+1)
else:
pages = range(page-2, page+3)
context = {
'skus_page':skus_page,
'pages':pages
django 分頁功能
django 分頁功能 django自帶了paginator,功能有一定侷限,使用django pure pagination功能更為強大 github傳送門 1 使用pip源安裝 pip install django pure pagination pure pagination 3 在setti...
Django 內建分頁
from django.core.paginator import paginator,page userlist models.user.objects.all paginator paginator userlist,10 per page 每頁顯示條目數量 count 資料總個數 num pa...
Django分頁元件
django內建分頁 內建分頁包含2個重要物件 paginator和page物件,分別封裝了分頁的一些物件屬性,實質上是2個類屬性的例項化 首先從django.core.paginator中引入模組 from django.core.paginator import paginator,emptyp...