日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Django(part43)--分页

發布時間:2023/12/19 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Django(part43)--分页 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學習筆記,僅供參考,有錯必糾


分頁


分頁是指在web頁面有大量數據需要顯示時,當一頁的內容太多不利于閱讀和不利于數據提取的情況下,可以分為多頁進行顯示;

Django提供了一些類管理分頁的數據 , 即將數據分在不同頁面中,并帶有上一頁/下一頁的鏈接;

這些類位于django/core/paginator.py文件中。


Paginator對象


  • Paginator對象的構造方法
Paginator(object_list, per_page) #object_list 對象列表,比如models.Book.objects.all() #per_page 每頁數據個數,比如10

該構造函數的返回值為一個分頁對象


  • Paginator屬性
count #對象總數 num_pages #頁面總數 page_range #從1開始, 用于記錄當前面碼數 per_page #每頁最大個數
  • Paginator方法
Paginator.page(number) #參數 number為頁碼信息(從1開始) #返回當前number頁對應的頁信息 #如果提供的頁碼不存在,拋出InvalidPage異常
  • Paginator異常exception
InvalidPage #當向page()傳入一個無效的頁碼時拋出 PageNotAnInteger #當向page()傳入一個不是整數的值時拋出 EmptyPage #當向page()提供一個有效值,但是那個頁面上沒有任何對象時拋出

Page對象


調用Paginator對象的page()方法,將返回Page對象,不需要我們手動構造。


  • Page對象屬性
object_list #當前頁上所有對象的列表 number #當前頁的序號(從1開始) paginator #當前page對象相關的Paginator對象
  • Page對象方法
has_next() #如果有下一頁返回True has_previous() #如果有上一頁返回True has_other_pages() #如果有上一頁或下一頁返回True next_page_number() #返回下一頁的頁碼,如果下一頁不存在,拋出InvalidPage異常 previous_page_number() #返回上一頁的頁碼,如果上一頁不存在,拋出InvalidPage異常 len() #返回當前頁面對象的個數
  • 注意事項

Page對象是可迭代對象,可以用for語句來訪問當前頁面中的每個對象。

總結

以上是生活随笔為你收集整理的Django(part43)--分页的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。