亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > 幫助中心 > 正文

Django實現基于類的分頁功能

2024-07-09 22:41:44
字體:
來源:轉載
供稿:網友

開發個人博客時往往避免不了分頁功能的實現,實現方法大體上分為函數和類兩種。本文基于類實現分頁功能,以下是詳細代碼:

class Page: page_num = 0 total_count = 0 tartype = "" total_page = 0 # 總頁數 per_page = 8 # 每頁顯示8篇文章 max_page = 11 # 每頁最大展示頁數選項 half_page = max_page // 2 category = "" # 標記該鏈接所屬分類ID,首頁默認為空 def __init__(self, page_num, total_count, tartype, category): """ 初始化函數:接收頁碼數、總數據數,計算總頁碼數并過濾錯誤頁碼數據 :param page_num: 頁碼數 :param total_count: 總數據數 :param tartype: 分類值 :param category: 所屬分類ID """ self.page_num = page_num self.total_count = total_count self.tartype = tartype self.total_page, m = divmod(self.total_count, self.per_page) # 總頁碼數,余數為m if category:  self.category = category if m:  self.total_page += 1 if self.total_page < self.max_page:  self.max_page = self.total_page  self.half_page = self.max_page // 2 # 過濾錯誤get數據 if self.page_num > self.total_page:  self.page_num = self.total_page elif self.page_num < 1:  self.page_num = 1 def data_start(self): return (self.page_num - 1) * self.per_page def data_end(self): return self.page_num * self.per_page def page_html(self): # 計算頁數選項 page_start = self.page_num - self.half_page page_end = self.page_num + self.half_page if page_start <= 1:  page_start = 1  page_end = self.max_page if page_end >= self.total_page:  page_end = self.total_page  page_start = self.total_page - self.max_page + 1 # 計算上一頁下一頁選項 if self.page_num == 1:  last_page = self.page_num  next_page = self.page_num + 1 else:  if self.page_num == self.total_page:  last_page = self.page_num - 1  next_page = self.page_num  else:  last_page = self.page_num - 1  next_page = self.page_num + 1 print(self.category) html_str_list = [] html_str_list.append('<li><a href="/{}/?page={}{}" >«</a></li>'.format(self.tartype, last_page, self.category)) for i in range(page_start, page_end + 1):  if i == self.page_num:  tmp = '<li><a class="active" href="/{}/?page={}{}" >{}</a></li>'.format(self.tartype, i, self.category, i)  html_str_list.append(tmp)  continue  tmp = '<li><a href="/{}/?page={}{}" >{}</a></li>'.format(self.tartype, i, self.category, i)  html_str_list.append(tmp) html_str_list.append('<li><a href="/{}/?page={}{}" >»</a></li>'.format(self.tartype, next_page, self.category)) page_html = "".join(html_str_list) return page_html

通過修改per_page、max_page控制每頁展示的文章數和分頁模塊展示的最大頁碼數。

實現思路:創建page類對象,傳入參數為page_num(當前頁碼數)、total_count(總文章數)、tartype(分類值)、category(所屬分類ID)【注:tartpe用于區分index頁還是category頁,category為查詢的分類ID,index頁時值為空??梢愿鶕约阂獙崿F的功能進行修改】構造函數會計算出總頁碼數并過濾掉錯誤數據。需要實現某功能是直接調用類方法即可。

類方法:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美疯狂做受xxxx高潮| 国产在线观看精品一区二区三区| 久久久电影免费观看完整版| 91亚洲国产成人精品性色| 欧美日本在线视频中文字字幕| 日韩精品免费视频| 国产色婷婷国产综合在线理论片a| 91精品国产色综合| 欧洲亚洲女同hd| 亚洲加勒比久久88色综合| 日本国产欧美一区二区三区| 国产精品久久久久免费a∨| 久久久久久久久久久免费精品| 久久天堂av综合合色| 久久中文字幕在线视频| 欧美老女人www| 日韩在线视频观看| 亚洲女人初尝黑人巨大| 一区二区在线免费视频| 久久久久久久久爱| 欧美三级免费观看| 欧美日韩在线一区| 亚洲人午夜精品| 91在线免费看网站| 欧美精品aaa| 97在线日本国产| 亚洲国产精品字幕| 久久久91精品国产| 国产精品爽爽ⅴa在线观看| 欧美日韩xxx| 不卡中文字幕av| 98精品国产自产在线观看| 亚洲有声小说3d| 日韩乱码在线视频| 一个人看的www欧美| 欧美日韩亚洲系列| 97在线视频一区| 日韩精品免费综合视频在线播放| www.国产精品一二区| 久久91亚洲人成电影网站| 亚洲伊人久久大香线蕉av| 欧美国产日本高清在线| 456亚洲影院| 中文字幕欧美在线| 亚洲一区二区三区乱码aⅴ| 91黑丝在线观看| 91精品一区二区| 亚洲国产欧美一区二区三区久久| 亚洲精品美女在线观看播放| 亚洲天堂av在线免费| 欧美一区在线直播| 久久久久九九九九| 91美女福利视频高清| 国产欧美一区二区三区久久人妖| 国产精品1234| 九九九热精品免费视频观看网站| 日韩成人在线视频网站| 欧美一级在线播放| 亚洲国产精品一区二区三区| 成人a级免费视频| 色与欲影视天天看综合网| 欧美限制级电影在线观看| 亚洲午夜国产成人av电影男同| 亚洲高清色综合| 亚洲精品午夜精品| 不卡中文字幕av| 国模叶桐国产精品一区| 欧美电影免费看| 91亚洲精华国产精华| 亚洲性日韩精品一区二区| 欧美黄色成人网| 亚洲精品一区在线观看香蕉| 国产欧美亚洲精品| 欧美视频不卡中文| 韩曰欧美视频免费观看| 51精品国产黑色丝袜高跟鞋| 日韩美女激情视频| 久久精品国产69国产精品亚洲| 欧美激情亚洲激情| www.欧美免费| 美日韩精品免费视频| 国产精品国产三级国产aⅴ9色| 777国产偷窥盗摄精品视频| 久久躁狠狠躁夜夜爽| 欧美一乱一性一交一视频| 欧美日韩一区二区三区| 亚洲美女又黄又爽在线观看| 亚洲一区二区三区乱码aⅴ| 欧美日韩亚洲天堂| 国产一区二区三区视频免费| 国产精品一区二区久久久久| 国产精品视频在线播放| 久久国产加勒比精品无码| 超碰日本道色综合久久综合| 国产精品老女人视频| 国产热re99久久6国产精品| 国产一区二区丝袜高跟鞋图片| 91精品国产乱码久久久久久久久| 国产精品久久77777| 成人免费视频在线观看超级碰| 国产成人一区二区三区电影| 国产成人av在线播放| 国产精品电影在线观看| 欧美中文字幕第一页| 日韩欧美中文字幕在线观看| 一区国产精品视频| 亚洲第一免费网站| 久久国产精品久久久久久久久久| 亚洲天堂免费视频| 国产精品男女猛烈高潮激情| 亚洲欧美综合区自拍另类| 欧美怡红院视频一区二区三区| 97香蕉久久超级碰碰高清版| 色婷婷综合成人| 88xx成人精品| 日韩精品视频在线观看免费| 午夜精品一区二区三区在线播放| 国产精品美女视频网站| 精品视频在线播放免| 国产午夜精品一区理论片飘花| 日韩国产一区三区| 日本一区二三区好的精华液| 国产精品久久久久免费a∨大胸| 国产精品国产三级国产aⅴ9色| 国产精品福利网| 国产精品国产三级国产aⅴ浪潮| 亚洲国产精久久久久久久| 国产日产欧美精品| 日本高清视频一区| 91高潮精品免费porn| 亚洲免费中文字幕| 亚洲人成电影在线观看天堂色| 精品成人乱色一区二区| 91产国在线观看动作片喷水| 国产精品久久久久久久久免费看| 日本久久精品视频| 亚洲18私人小影院| 91精品国产乱码久久久久久久久| 91豆花精品一区| 亚洲性视频网址| 亚洲一区二区久久久| 精品日韩视频在线观看| 国产精品999| 成人情趣片在线观看免费| 日韩欧美一区二区三区| 日韩精品亚洲视频| 91久久在线观看| 国产这里只有精品| 亚洲第一福利网站| 日本一欧美一欧美一亚洲视频| 97av在线视频免费播放| 亚洲视频在线观看网站| 精品久久久久久亚洲国产300| 国产91网红主播在线观看| 久久精品国产久精国产思思| 国产亚洲精品久久久优势| 欧美精品在线看| 亚洲国产天堂久久国产91| 91免费的视频在线播放| 国产视频久久久久久久| 亚洲美女喷白浆| 夜色77av精品影院| wwwwwwww亚洲| 久久精品国产一区二区三区|