AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

三步实现 Django Paginator 分页

  • 2020-02-11
  • 本文字数:884 字

    阅读完需:约 3 分钟

三步实现Django Paginator 分页

Django 提供了一个新的类来帮助管理分页数据,这个类存放在 django/core/paginator.py.它可以接收列表、元组或其它可迭代的对象。本文将分三步介绍 Django Paginator 分页的实现步骤。

一、通过模型创建 Subject

Django models


from django.db import models   class Subject(models.Model):           """学科""”           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 = "学科"
复制代码

二、通过 view 模块,要呈现到前端的数据

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):      """查询学科"""      \#查询Subject 表的所有数据      subjects = Subject.objects.all().order_by("no”)      \#使用Paginator模块对数据分页,一页5条数据      paginator = Paginator(subjects, 5)      \#使用request.GET.get()函数获取uri中的page参数的数值      page = request.GET.get('page')      try:          \#通过获取上面的page参数,查询此page是否为整数并且是否可用          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 中的数据渲染到前端模版上

前端分页代码块:




复制代码

四、最终显示效果

1557912403536010029.png


(图片来源于网络)


本文转载自宜信技术学院网站。


原文链接:http://college.creditease.cn/detail/246


2020-02-11 20:251009

评论

发布
暂无评论
发现更多内容

From Java To Kotlin 2:Kotlin 类型系统与泛型终于懂了

Seachal

Java android kotlin 泛型 类型

百度APP iOS端包体积50M优化实践(三) 资源优化

百度Geek说

ios 开发语言 Object-c 企业号 6 月 PK 榜 6 月 优质更文活动

2023-06-05:Redis官方为什么不提供 Windows版本?

福大大架构师每日一题

redis 福大大

关于前端,你都会什么?

MonkeyZz

前端

K8S | 核心原理分析

Java Docker 架构 Kubernetes k8s

什么是死锁?它是如何产生的?

javacn.site

太赞了!阿里技术团队《Java 面试官手册》突击版对外开放!

做梦都在改BUG

Java java面试 Java八股文 Java面试题 Java面试八股文

原来kafka也有事务啊,再也不担心消息不一致了

JAVA旭阳

kafka

对比才知差距!海尔“精华洗”用实验告诉用户

脑极体

海尔

分析初识vue小案例

张三丰无极

6 月 优质更文活动

建立互联网可靠性工程体系框架的思路

阿泽🧸

可靠性工程 6 月 优质更文活动

Flink实例:电商用户行为实时分析

TiAmo

数据分析 电商 flink 实战 6 月 优质更文活动

基于STM32+NBIOT+华为云IOT设计的智能井盖

DS小龙哥

6 月 优质更文活动

重磅版本发布|三大关键特性带你认识 Milvus 2.2.9 :JSON、PartitionKey、Dynamic Schema

Zilliz

非结构化数据 Milvus Zilliz 向量数据库

Docker技术架构概述

穿过生命散发芬芳

Docker 6 月 优质更文活动

快手严厉打击直播下收割麦行为:自媒体蹭热度不可违背公序良俗

石头IT视角

架构实战营模块 1 作业

銀色流星

架构实战营

从Docker和Kubernetes看Containerd

鲸品堂

Docker 容器 Containerd 企业号 6 月 PK 榜

Github 上最值得学习的 Springboot核心笔记,硬核简直了

做梦都在改BUG

Java spring Spring Boot 框架

C语言编程语法—输入与输出

芯动大师

函数 输入输出 6 月 优质更文活动

DevOps| 研发效能团队和PMO团队如何合作共赢?

laofo

DevOps cicd 研发效能 持续交付 PMO

NineData x 华为云正式上线

NineData

数据库 华为云 企业动态 语言 & 开发 NineData

什么是OSPF被动接口?如何配置?华为、思科、瞻博网络三厂商命令来了

wljslmz

OSPF 6 月 优质更文活动

GitHub星标20k+的Java指南,号称"Star收割机"

做梦都在改BUG

Java java面试 Java八股文 Java面试题 Java面试八股文

京城传喜报:汨江源喜获2023第25届北京高端油博会“金奖”

科技热闻

阿里Java调优笔记爆火,7大模块优化实战,请查收

做梦都在改BUG

Java 性能优化 性能调优

如何轻松应对复杂的分布式系统日志收集和分析

xfgg

ELK 日志收集架构 6 月 优质更文活动

百度推出高考搜索指数,最有“钱”景的专业你绝对想不到

科技热闻

WHATWG vs W3C

MonkeyZz

GitOps 最佳实践(下)| 基于 Amazon EKS 构建 CI/CD 流水线

亚马逊云科技 (Amazon Web Services)

Kubernetes

对线面试官-线程池(三)

派大星

Java 面试

三步实现Django Paginator 分页_文化 & 方法_任宏利_InfoQ精选文章