欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

三步實(shí)現(xiàn)Django Paginator分頁的方法

 更新時(shí)間:2019年06月11日 11:50:53   作者:宜信技術(shù)學(xué)院  
這篇文章主要介紹了三步實(shí)現(xiàn)Django Paginator分頁的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

Django提供了一個(gè)新的類來幫助管理分頁數(shù)據(jù),這個(gè)類存放在django/core/paginator.py.它可以接收列表、元組或其它可迭代的對象。本文將分三步介紹Django Paginator 分頁的實(shí)現(xiàn)步驟

一、通過模型創(chuàng)建Subject

Django models

from django.db import models 
class Subject(models.Model):   
  """學(xué)科""”   
  no = models.AutoField(primary_key=True, verbose_name="編號")   
  name = models.CharField(max_length=31, verbose_name="名稱")   
  intro = models.CharField(max_length=511, verbose_name="介紹")   
  def __str__(self):     
    return self.name   
  
  class Meta:     
    db_table = 'tb_subject'     
    verbose_name_plural = "學(xué)科"

二、通過view模塊,要呈現(xiàn)到前端的數(shù)據(jù)

Django view 的配置

from django.shortcuts import render
from django.core.paginator import Paginator, InvalidPage, EmptyPage, PageNotAnInteger
from vote.models import Subject
def show_subject(request):
  """查詢學(xué)科"""
  #查詢Subject 表的所有數(shù)據(jù)
  subjects = Subject.objects.all().order_by("no”)
  #使用Paginator模塊對數(shù)據(jù)分頁,一頁5條數(shù)據(jù)
  paginator = Paginator(subjects, 5)
  #使用request.GET.get()函數(shù)獲取uri中的page參數(shù)的數(shù)值
  page = request.GET.get('page')
  try:
    #通過獲取上面的page參數(shù),查詢此page是否為整數(shù)并且是否可用
    subject_obj = paginator.page(page)
  except PageNotAnInteger:
    subject_obj = paginator.page(1)
  except (EmptyPage, InvalidPage):
    subject_obj = paginator.page(paginator.num_pages)
  return render(request, "vote/subject.html", {'subject_list': subject_obj})

三、將view中的數(shù)據(jù)渲染到前端模版上

前端分頁代碼塊:

<div class="pull-right" style="margin-right: 480px;margin-top: 0px”>
        <!— 分頁功能-->
        <nav>
          <ul class="pagination”>
            <!— 分頁功能前端的方向箭頭代碼-->
            {% if subject_list.has_previous %}
            <li class="enabled">
              <a href="?page={{ subject_list.previous_page_number }}" rel="external nofollow" aria-label="Previous">
                <span aria-hidden="true">&laquo;</span>
              </a>
            </li>
            {% endif %}
            <!— 分頁功能顯示頁碼的中間部分代碼-->
            {% for page_num in subject_list.paginator.page_range %}
              {% if page_num == subject_list.number %}
                <li class="active">
                  <a href="#" rel="external nofollow" >
                    {{ page_num }}
                    <span class="sr-only">(current)</span>
                  </a>
                </li>
              {% else %}
                <li>
                  <a href="?page={{ page_num }}" rel="external nofollow" >{{ page_num }}
                    <span class="sr-only">(current)</span>
                  </a>
                </li>
              {% endif %}
            {% endfor %}
            <!— 分頁功能末端的方向箭頭代碼-->
            {% if subject_list.has_next %}
            <li class="enabled">
              <a href="?page={{ subject_list.next_page_number }}" rel="external nofollow" aria-label="last">
                <span aria-hidden="true">&raquo;</span>
              </a>
            </li>
            {% endif %}
          </ul>
        </nav>
</div>

四、最終顯示效果

 以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 講解Python的Scrapy爬蟲框架使用代理進(jìn)行采集的方法

    講解Python的Scrapy爬蟲框架使用代理進(jìn)行采集的方法

    這篇文章主要介紹了講解Python的Scrapy爬蟲框架使用代理進(jìn)行采集的方法,并介紹了隨機(jī)使用預(yù)先設(shè)好的user-agent來進(jìn)行爬取的用法,需要的朋友可以參考下
    2016-02-02
  • Python實(shí)現(xiàn)微信高效自動(dòng)化操作

    Python實(shí)現(xiàn)微信高效自動(dòng)化操作

    在如今數(shù)字化時(shí)代,人們對于效率的追求越來越強(qiáng)烈,而PyAutoGUI和Pyperclip作為Python中的兩個(gè)強(qiáng)大庫,為我們實(shí)現(xiàn)自動(dòng)化操作提供了便利,下面我們就來看看如何利用這兩個(gè)庫實(shí)現(xiàn)微信自動(dòng)化操作吧
    2023-10-10
  • python判斷變量是否為列表的方法

    python判斷變量是否為列表的方法

    在本篇文章里小編給大家整理了關(guān)于python判斷變量是否為列表的方法,有需要的朋友們可以學(xué)習(xí)下。
    2020-09-09
  • 利用Python中的pandas庫對cdn日志進(jìn)行分析詳解

    利用Python中的pandas庫對cdn日志進(jìn)行分析詳解

    這篇文章主要介紹了利用Python中的pandas庫進(jìn)行cdn日志分析的相關(guān)資料,文中分享了pandas對cdn日志分析的完整示例代碼,然后詳細(xì)介紹了關(guān)于pandas庫的相關(guān)內(nèi)容,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-03-03
  • 使用python如何實(shí)現(xiàn)泛型函數(shù)

    使用python如何實(shí)現(xiàn)泛型函數(shù)

    這篇文章主要介紹了使用python如何實(shí)現(xiàn)泛型函數(shù),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Django中外鍵使用總結(jié)

    Django中外鍵使用總結(jié)

    本文主要介紹了Django中外鍵使用總結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 一文帶你重溫一下Python的對象模型

    一文帶你重溫一下Python的對象模型

    在面向?qū)ο蟮睦碚撝?,有兩個(gè)核心的概念:類和實(shí)例。在?Python?里面,類和實(shí)例都是對象,也就是所謂的類對象和實(shí)例對象。本文主要來大家重溫一下Python對象模型的相關(guān)知識,感興趣的可以了解一下
    2023-04-04
  • 淺談python常用程序算法

    淺談python常用程序算法

    這篇文章主要介紹了python常用程序算法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • python中幾種括號的使用()、[]、{}舉例說明

    python中幾種括號的使用()、[]、{}舉例說明

    這篇文章主要介紹了python中幾種括號的使用()、[]、{}舉例說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Python爬蟲利用多線程爬取 LOL 高清壁紙

    Python爬蟲利用多線程爬取 LOL 高清壁紙

    這篇文章主要介紹了Python爬蟲利用多線程爬取 LOL 高清壁紙,通過網(wǎng)站爬取每一個(gè)英雄的所有皮膚圖片,全部下載下來并保存到本地,下文爬取過程感興趣的朋友可以參考一下
    2022-06-06

最新評論