版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第Django前端BootCSS實(shí)現(xiàn)分頁(yè)的方法通過(guò)使用bootstrap框架,并配合Django自帶的Paginator分頁(yè)組件即可實(shí)現(xiàn)簡(jiǎn)單的分頁(yè)效果。
1.創(chuàng)建MyWeb項(xiàng)目
pythonmanage.pystartappMyWeb
2.修改settings.py配置文件,導(dǎo)入我們的app的名字,去掉csrf這個(gè)選項(xiàng)
#屏蔽一項(xiàng)
MIDDLEWARE=[
#django.middleware.csrf.CsrfViewMiddleware
#新增一項(xiàng)
TEMPLATES=[
MyWeb.apps.MywebConfig
3.來(lái)urls.py里面寫(xiě)一條路由,名字就叫index/映射到views.index函數(shù)下處理此請(qǐng)求
fromMyWebimportviews
urlpatterns=[
path(admin/,admin.site.urls),
path(index/,views.index)
4.最后在myweb里面的views.py設(shè)置一個(gè)視圖函數(shù),最后運(yùn)行
fromdjango.shortcutsimportrender
fromdjango.shortcutsimportHttpResponse
fromMyWebimportmodels
defindex(requests):
returnHttpResponse(abcd)
5.配置數(shù)據(jù)庫(kù)文件models.py并設(shè)置以下內(nèi)容
fromdjango.dbimportmodels
#創(chuàng)建用戶表
classUser(models.Model):
id=models.AutoField(primary_key=True)
username=models.CharField(max_length=32)
password=models.CharField(max_length=32)
6.更新數(shù)據(jù)庫(kù)與數(shù)據(jù)表
pythonmanage.pymakemigrations#將你的數(shù)據(jù)庫(kù)變動(dòng)記錄下來(lái)(并不會(huì)幫你創(chuàng)建表)
pythonmanage.pymigrate#將你的數(shù)據(jù)庫(kù)變動(dòng)正在同步到數(shù)據(jù)庫(kù)中
7.增加一個(gè)新的view并使用rand()函數(shù).
首先在urls.py中增加路由
fromdjango.contribimportadmin
fromdjango.urlsimportpath
fromMyWebimportviews
urlpatterns=[
path(admin/,admin.site.urls),
path(index/,views.index),
path(rand/,views.rand)
其次在view.py視圖中增加生成函數(shù).
fromdjango.shortcutsimportrender
fromdjango.shortcutsimportHttpResponse
fromMyWebimportmodels
importrandom
defindex(requests):
returnHttpResponse(abcd)
#生成測(cè)試數(shù)據(jù)
defrand(request):
foriinrange(1,1000):
chars=[]
pasd=[]
forxinrange(1,8):
chars.append(random.choice(abcdefghijklmnopqrstuvwxyz))
pasd.append(random.choice(0987654321))
user=.join(chars)
pwd=.join(pasd)
models.User.objects.create(username=user,password=pwd)
returnHttpResponse(ok)
啟動(dòng)django并訪問(wèn):8000/rand/等待數(shù)據(jù)生成結(jié)束.
8.在templates模板中,新增一個(gè)page.html頁(yè)面。
!--name:page.html--
!DOCTYPEhtml
htmllang=en
head
metacharset=UTF-8
titleTitle/title
linkrel=stylesheethref=/bootstrap/4.5.0/css/bootstrap.min.cssrel=externalnofollow
/head
body
table>
9.最后在路由曾以及view中增加對(duì)應(yīng)的URL以及路由函數(shù).
首先在urls.py中增加一條新路由.
fromdjango.contribimportadmin
fromdjango.urlsimportpath
fromMyWebimportviews
urlpatterns=[
path(admin/,admin.site.urls),
path(index/,views.index),
path(rand/,views.rand),
path(page,views.page)
接著在views.py中增加一個(gè)page函數(shù).
fromdjango.shortcutsimportrender
fromdjango.shortcutsimportHttpResponse
fromMyWebimportmodels
importrandom
fromdjango.core.paginatorimportPaginator,EmptyPage,PageNotAnInteger
defindex(requests):
returnHttpResponse(abcd)
#生成測(cè)試數(shù)據(jù)
defrand(request):
foriinrange(1,1000):
chars=[]
pasd=[]
forxinrange(1,8):
chars.append(random.choice(abcdefghijklmnopqrstuvwxyz))
pasd.append(random.choice(0987654321))
user=.join(chars)
pwd=.join(pasd)
models.User.objects.create(username=user,password=pwd)
returnHttpResponse(ok)
#分頁(yè)函數(shù)
defpage(request):
user=models.User.objects.all()
paginator=Paginator(user,10)
currentPage=int(request.GET.get(id,1))
ifpaginator.num_pages15:
ifcurrent51:
pageRange=range(1,11)
elifcurrentPage+5paginator.num_pages:
pageRange=range(current5,paginator.num_pages)
else:
pageRange=range(current5,currentPage+5)
else:
pageRange=paginator.page_range
try:
user_list=paginator.page(currentPage)
exceptPageNotAnInteger:
user_list=paginator.page(1)
except:
user_list=paginator.page(paginator.n
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026青海西寧城西區(qū)西部礦業(yè)集團(tuán)有限公司黨務(wù)工作部門業(yè)務(wù)崗位選聘5人參考考試試題附答案解析
- 酒廠生產(chǎn)廠長(zhǎng)規(guī)章制度
- 2026湖南長(zhǎng)沙市雨花區(qū)中雅培粹雙語(yǔ)中學(xué)合同制教師招聘參考考試題庫(kù)附答案解析
- 生產(chǎn)體系交付管理制度
- 生產(chǎn)企業(yè)招聘制度
- 2026甘肅白銀市平川區(qū)容通水務(wù)有限公司招聘9人備考考試題庫(kù)附答案解析
- 生產(chǎn)車間雙面膠管理制度
- 2026河南鄭州管城回族區(qū)嵩陽(yáng)學(xué)校(小學(xué)部)招聘3人參考考試題庫(kù)附答案解析
- 造紙廠鍋爐安全生產(chǎn)制度
- 安全生產(chǎn)指揮官制度
- 2025年山東省濟(jì)南市中考英語(yǔ)真題卷含答案解析
- 侍酒師崗前實(shí)操操作考核試卷含答案
- 2025-2026學(xué)年六年級(jí)英語(yǔ)上冊(cè)期末試題卷(含聽(tīng)力音頻)
- 【一年級(jí)】【數(shù)學(xué)】【秋季上】期末家長(zhǎng)會(huì):花開(kāi)有“數(shù)”一年級(jí)路【課件】
- 2025四川成都高新區(qū)婦女兒童醫(yī)院招聘技師、醫(yī)生助理招聘5人參考題庫(kù)附答案解析
- 2026年高考語(yǔ)文復(fù)習(xí)散文閱讀(四)
- 中建通風(fēng)與空調(diào)施工方案
- GB/T 3683-2023橡膠軟管及軟管組合件油基或水基流體適用的鋼絲編織增強(qiáng)液壓型規(guī)范
- 高考語(yǔ)言運(yùn)用題型之長(zhǎng)短句變換 學(xué)案(含答案)
- 2023年婁底市建設(shè)系統(tǒng)事業(yè)單位招聘考試筆試模擬試題及答案解析
- GB/T 16823.3-2010緊固件扭矩-夾緊力試驗(yàn)
評(píng)論
0/150
提交評(píng)論