這篇文章將為大家詳細(xì)講解有關(guān)怎么在python中使用Django框架實(shí)現(xiàn)在web端分頁呈現(xiàn)數(shù)據(jù),文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
目前累計(jì)服務(wù)客戶上千家,積累了豐富的產(chǎn)品開發(fā)及服務(wù)經(jīng)驗(yàn)。以網(wǎng)站設(shè)計(jì)水平和技術(shù)實(shí)力,樹立企業(yè)形象,為客戶提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站策劃、網(wǎng)頁設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。成都創(chuàng)新互聯(lián)公司始終以務(wù)實(shí)、誠(chéng)信為根本,不斷創(chuàng)新和提高建站品質(zhì),通過對(duì)領(lǐng)先技術(shù)的掌握、對(duì)創(chuàng)意設(shè)計(jì)的研究、對(duì)客戶形象的視覺傳遞、對(duì)應(yīng)用系統(tǒng)的結(jié)合,為客戶提供更好的一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進(jìn)步。首先介紹Django中的paginator類。paginator是Django中提供的可以實(shí)現(xiàn)管理數(shù)據(jù)分頁的類。
from django.core import paginator
下面是本文用到的paginator中的屬性和方法。
Paginator對(duì)象
1. 構(gòu)造:Paginator(列表,int):返回分頁的整體對(duì)象。
2. page_range:返回頁碼列表 [1,2,3,4…]
3. page(num):返回num頁的數(shù)據(jù)內(nèi)容
Page對(duì)象
1. 構(gòu)造:Paginator對(duì)象的page()方法返回Page對(duì)象。
2. number:返回當(dāng)前頁的序號(hào)。
3. paginator:當(dāng)前page對(duì)象相關(guān)的Paginator對(duì)象。page.paginator相當(dāng)于Paginator對(duì)象。
A. 構(gòu)造url。
#---urls.py------ from django.conf.urls import url import views urlpatterns = [ # 這個(gè)url構(gòu)造在根目錄下 # 定義為'info/數(shù)字'是為了傳一個(gè)頁面序號(hào)為參數(shù)給視圖函數(shù) # 視圖函數(shù)接收到這個(gè)數(shù)字為參數(shù)后,就可以調(diào)用對(duì)應(yīng)頁的數(shù)據(jù)呈現(xiàn) # 例如我們輸入www.xxx.com/info/3,視圖函數(shù)就會(huì)接收到(request,3)兩個(gè)參數(shù) url(r'^info/(\d*)$',views.info), ] #---------
B. 編寫視圖函數(shù)的邏輯。
#---views.py--- from django.shortcuts import render # 這里的lcoation是定義的模型類,包含有若干條地名數(shù)據(jù) from models import location from django.core import paginator # 視圖函數(shù) # 同樣,index是url傳進(jìn)來的頁面序號(hào) def info(request,index): # 獲取所有的的數(shù)據(jù),list是一個(gè)列表,包含有所有數(shù)據(jù)對(duì)應(yīng)的實(shí)例對(duì)象 list = location.objects.all() # 使用Paginator方法返回一個(gè)分頁的對(duì)象 # 這個(gè)對(duì)象包括所有數(shù)據(jù),分頁的情況 pag = paginator.Paginator(list,3) # 使用此判斷語句是為了在用戶跳轉(zhuǎn)www.xxx.com/info/時(shí)也能訪問第一頁 if index=='': index=1 # 返回指定(index)頁的數(shù)據(jù),用于呈現(xiàn)在指定頁上 page = pag.page(index) # 構(gòu)造上下文,以便html文件中能調(diào)用對(duì)應(yīng)頁的數(shù)據(jù) context = { 'page':page, } return render(request,'booktest/info.html',context) #---------
C. 模板文件。
#---info.html------Title
關(guān)于怎么在python中使用Django框架實(shí)現(xiàn)在web端分頁呈現(xiàn)數(shù)據(jù)就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。