写点什么

三步实现 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:251243

评论

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

iframe自动化革命:颠覆传统网页嵌入的新趋势

测吧(北京)科技有限公司

测试

API接口知识小结

Noah

你是在「做」敏捷还是正在「变得」敏捷?

敏捷开发

项目管理 Scrum 敏捷开发 敏捷转型 敏捷团队

云原生最佳实践系列 1:如何快速实现kafka性能压测

阿里巴巴云原生

kafka 阿里云 云原生 消息

矩阵起源新一年喜报连连!

MatrixOrigin

数据库 分布式 云原生

NFTScan | 03.11~03.17 NFT 市场热点汇总

NFT Research

NFT\ NFTScan

LED芯片寿命试验过程解析

Dylan

屏幕亮度 光热发电 电子 LED display LED显示屏

2024政府工作报告聚焦数字经济,“双象限”评选凸显数字化先锋

信通院IOMM数字化转型团队

数字化转型 数字经济 IOMM 企业数字化转型发展双象限

Java社招面经分享,别人都是怎么面试蚂蚁的?

阿里、莫言

Java Java面经 Java面试题

Apache Doris 2.0.6 版本正式发布

SelectDB

数据库 开源 数据仓库 数据湖 大数据 开源

IBM + X-POWER + 源卓微纳:以AI会友,共创制造业智能化故事2.0

财见

详解GaussDB(DWS)中3个防过载检查项

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 华为云GaussDB(DWS)

数字化车间MES管理系统是如何降低企业生产成本

万界星空科技

数字化转型 数字化 制造业 mes 万界星空科技

华为云开年采购季全面启动 智领千行万业 赋能美好未来

轶天下事

软件测试学习笔记丨Pytest结合数据驱动读取csv文件

测试人

软件测试

新一代AI模型Claude 3:有大学生智商,全面超越GPT-4,现已正式登陆 Amazon Bedrock!

伊克罗德信息科技

你在测试金字塔的哪一层(上)

禅道项目管理

软件开发 自动化测试 测试工程师 测试金字塔

深入探讨GPT系列与其他NLP架构的流行度差异及其应用解析

毛显新

人工智能 Transformer GPT 大语言模型

全新架构!日志服务 SLS 自研免登录方案发布

阿里巴巴云原生

阿里云 云原生 日志服务 sls

Ortel推出用于激光雷达和光学传感的下一代激光模块

财见

Hero Talk|无缝扩展:Kubernetes 上的 Amazon Aurora 分片和流量管理

亚马逊云科技 (Amazon Web Services)

人工智能 生成式AI

制造业工厂中的设备管理系统

万界星空科技

工业互联网 制造业 mes 设备管理 设备数据采集

Footprint Analytics 强势入局 AI 推出全新投研工具

Footprint Analytics

#人工智能 #区块链

如何通过ETL做数据转换

谷云科技RestCloud

ETL 数据集成 数据转换

架构实战营 - 模块二作业

满心

架构实战营

逐点半导体与网易《逆水寒》手游就移动端视觉处理优化达成合作

财见

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