這篇文章將為大家詳細(xì)講解有關(guān)Django中怎么實(shí)現(xiàn)一個(gè)分頁(yè)功能,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
創(chuàng)新互聯(lián)建站是一家以網(wǎng)絡(luò)技術(shù)公司,為中小企業(yè)提供網(wǎng)站維護(hù)、成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、網(wǎng)站備案、服務(wù)器租用、域名申請(qǐng)、軟件開(kāi)發(fā)、小程序開(kāi)發(fā)等企業(yè)互聯(lián)網(wǎng)相關(guān)業(yè)務(wù),是一家有著豐富的互聯(lián)網(wǎng)運(yùn)營(yíng)推廣經(jīng)驗(yàn)的科技公司,有著多年的網(wǎng)站建站經(jīng)驗(yàn),致力于幫助中小企業(yè)在互聯(lián)網(wǎng)讓打出自已的品牌和口碑,讓企業(yè)在互聯(lián)網(wǎng)上打開(kāi)一個(gè)面向全國(guó)乃至全球的業(yè)務(wù)窗口:建站歡迎來(lái)電:18982081108Title 圖書(shū)列表
ID | 名字 | 出版社 | 價(jià)格 |
---|---|---|---|
{{ book.id }} | {{ book.title }} | {{ book.publisher.name }} | {{ book.price }} |
def book_list(request): # 每一頁(yè)顯示數(shù)量 per_page = 7 # 總數(shù)據(jù) total_count = models.Book.objects.all().count() # 總共需要多少頁(yè)顯示數(shù)據(jù) total_page, m = divmod(total_count, per_page) if m: total_page += 1 # 從URL中取參數(shù),當(dāng)沒(méi)有page時(shí),page_num為1,當(dāng)page_num大于總頁(yè)數(shù)時(shí),賦于最后一頁(yè),當(dāng)page為字符時(shí),異常出錯(cuò)時(shí),為1值 try: page_num = request.GET.get("page") page_num = int(page_num) if page_num > total_page: page_num = total_page elif page_num < 1: page_num =1 except Exception as e: page_num = 1 #定義兩個(gè)變量,截取數(shù)據(jù) data_start = (page_num-1)*per_page data_end = page_num*per_page #頁(yè)面上總共展示多少頁(yè)面 max_page =11 if total_page < max_page: max_page = total_page half_max_page = max_page//2 #結(jié)果為5,即左右各5頁(yè) # 頁(yè)面上展示的面碼從那兒結(jié)束 page_end = page_num + half_max_page #頁(yè)面上展示的頁(yè)碼從那兒開(kāi)始 page_start = page_num - half_max_page #如果當(dāng)前面減一半比1還小 if page_start <= 1: page_start = 1 page_end = max_page #如果當(dāng)前頁(yè)大于總頁(yè)數(shù) if page_end >= total_page: page_end = total_page page_start = total_page-max_page+1 #在后臺(tái)拼接分頁(yè)的html html_str_list = [] for i in range(page_start, page_end+1): #為當(dāng)前加一個(gè)active樣式 if i == page_num: tmp = '
關(guān)于Django中怎么實(shí)現(xiàn)一個(gè)分頁(yè)功能就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。