django的分頁元件
paginator物件: paginator = paginator(user_list, 10)
# per_page: 每頁顯示條目數量
# count: 資料總個數
# num_pages:總頁數
# page_range:總頁數的索引範圍,如: (1,10),(1,200)
# page: page物件
page物件:page=paginator.page(1)
# object_list 分頁之後的資料列表
# number 當前頁
# paginator paginator物件
批量資料入庫
booklist =
for i in range(100):
book.objects.bulk_create(booklist)#按照booklist中的物件進行批量資料入庫
for book in booklist:
print(book.title)
分頁器前端**(注意超連結中的/book/要和你的url一致)
分頁器後端**
def book(request):
book_list = book.objects.all()#需要分頁的資料,從資料庫裡取得的物件queryset列表
# 生成paginator物件,傳入書籍列表,每頁10條資料
paginator = paginator(book_list, 10)#建立分頁器物件
current_page = int(request.get.get('page', 1)) # 獲取url引數中傳來的當前頁碼
page_range =
# 左5 右5
# 獲取頁面傳來的頁碼的page物件
try:
page = paginator.page(current_page)
except exception as e:
current_page = 1
page = paginator.page(1)
if paginator.num_pages > 11:
if current_page + 5 > paginator.num_pages:
page_range = range(paginator.num_pages - 10, paginator.num_pages + 1)
elif current_page - 5 < 1:
page_range = range(1, 12)
else:
page_range = range(current_page - 5, current_page + 6)
else:
page_range = paginator.page_range
return render(request, 'pages.html', locals())
分頁後端需要向前端傳遞分頁範圍page_range,分頁物件,和當前頁,後端主要做的事情就是確定分頁範圍page_range,前端就是拿到前面說的資料,並生成分頁布局,當前**執行結果如圖
想要在哪個頁碼後面加上'...'只需在前端**的對應位置中填上這麼一句
...
根據需求可以新增首頁和尾頁按鈕等,只需對前端**的相應部分刪除就可以造成有無該功能 Django元件 分頁器
批量匯入資料 booklist for i in range 100 book.objects.bulk create booklist 分頁器的使用 book list book.objects.all paginator paginator book list,10 print count pa...
Django元件 分頁器
批量匯入資料 booklist for i in range 100 book.objects.bulk create booklist 分頁器的使用 book list book.objects.all paginator paginator book list,10 print count pa...
Django元件之 分頁器
django自帶分頁器 paginator 用起來非常方便。怕自己寫的出bug,可以使用現成的 批量匯入資料 booklist for i in range 100 book.objects.bulk create booklist 分頁器的使用 book list book.objects.all...