前言
本文主要給大家介紹了關于Django快速分頁的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。

分頁
在web開發中,對大量的商品進行分頁顯示,是常見的需求,django對分頁直接提供了現成的函數,讓我們的開發更為快速便捷...

動圖_Django快速分頁
示例代碼:
在后端(視圖函數中)
from django.shortcuts import renderfrom .models import ShowMyComputer# 引入方法from django.core.paginator import Paginator# Create your views here.def show(request, page_id): # 獲取需要分頁的對象集合 all_goods = ShowMyComputer.objects.all() # 創建分頁對象 paginator = Paginator(all_goods, 3) # 根據當前頁碼,確定返回的數據 current_page = paginator.page(page_id) # 保證前端取到的"頁數"為整型 page_id = int(page_id) return render(request, 'computer/list.html', locals())
在前端(html模板中)
<body> {# 展示當前頁面的數據 #} {% for goods in current_page %} <div class="my_goods"> <div class="goods_image">  </div> <br> <div class="goods_name">{{ goods.goods_name }}</div> </div> {% endfor %} <div class="page_num"> {# 判斷'上一頁'是否存在,如果存在則保留`上一頁`標簽 ,反之則不顯示`上一頁`標簽 #} {% if current_page.has_previous %} <a href="{% url 'computer:show' current_page.previous_page_number %}" rel="external nofollow" >上一頁</a> {% endif %} {# 確定分頁數量 #} {% for index in paginator.page_range %} {# 如果頁碼與當前頁面相符,則添加紅色背景 #} {% if page_id == index %} <a href= "{% url 'computer:show' index %}" style="background-color: red" >{{ index }}</a> {# 如果頁面與當前頁面不符,則正常顯示 #} {% else %} <a href="{% url 'computer:show' index %}" rel="external nofollow" >{{ index }}</a> {% endif %} {% endfor %} {# 判斷'下一頁'是否存在,如果存在則保留`下一頁`標簽 ,反之則不顯示`下一頁`標簽 #} {% if current_page.has_next%} <a href="{% url 'computer:show' current_page.next_page_number %}" rel="external nofollow" >下一頁</a> {% endif %} </div></body>總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。
新聞熱點
疑難解答