写点什么

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

评论

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

基于超级App构建视角,探索不同的软件应用架构模式

FinFish

小程序容器 超级app 小程序技术 软件应用架构

常听人说并发量高达多少多少,这个值是怎么测的?

为自己带盐

Jmeter 压力测试

深圳智慧公厕推进智慧城市建设

光明源智慧厕所

智慧城市

MobTech ShareSDK|口令分享

MobTech袤博科技

直播预告 | 博睿学院:无监督知识图谱与故障根因分析

博睿数据

智能运维 博睿数据 博睿学院

自动化回归测试平台 AREX Agent 源码再阅读

AREX 中文社区

Java Java Agent 测试

清华开源图文对话大模型!表情包解读有一手,奇怪的benchmark增加了

Openlab_cosmoplat

开源项目 开源社区 ChatGPT

中国物流集团携手用友启动ERP暨财务共享建设项目

用友BIP

财务共享

2023年北京.NET线下技术沙龙圆满落幕!

MASA技术团队

.net DDD MASA

最新报告:腾讯云获得多个单项冠军

科技热闻

软件测试/测试开发丨学习笔记之Selenium 常见控件定位方法

测试人

软件测试 自动化测试 测试开发 selenium

云计算遇上电动车,跑出新模式的数智化转型

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

皖投集团:财务共享,迈出“智慧企业”第一步

用友BIP

财务共享

华为云应用运维管理平台获评中国信通院可观测性评估先进级

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

看海联金汇财务共享智慧平台如何实现以数赋能智慧共享

用友BIP

财务共享

飞鹤乳业携手用友,引领数字化财务共享管理新时代

用友BIP

财务共享

ChatGPT与低代码开发:危机四伏、技术暴走!

加入高科技仿生人

人工智能 低代码 AI技术 ChatGPT

以财务共享中心建设,打造数字化创新引擎

用友BIP

财务共享

预搜优化,页面TTI时长缩减50%!去哪儿网酒店预订体验优化经验分享~

Qunar技术沙龙

前端 去哪儿网

用友助力中核集团建设财务共享中心新华发电分中心,实现业财融合

用友BIP

财务共享

什么是Scrum?Scrum的理论基石

顿顿顿

Scrum 敏捷 敏捷开发 敏捷开发管理 敏捷开发管理工具

如何构建自己的知识体系?

老张

知识体系

阿里巴巴开源的Spring Cloud Alibaba手册在GitHub上火了!完整版开放下载

采菊东篱下

架构 微服务

网易易盾流量多发反外挂落地实践

网易云信

安全 反外挂

Python从0到1丨带你认识图像平滑的三种线性滤波

华为云开发者联盟

Python 人工智能 华为云 华为云开发者联盟 企业号 5 月 PK 榜

数据高效转储,生产轻松支撑

鲸品堂

数据库 语言 & 开发 企业号 5 月 PK 榜

黑客入门指南,学习黑客必须掌握的技术

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

支撑企业未来10年高增长,用友资金管理平台助力新零售企业逆境破局

用友BIP

新零售 资金管理

PostgreSQL技术内幕(八)源码分析 ——投影算子和表达式计算

酷克数据HashData

《苏丹的复仇》携手华为HMS生态,实现用户、收入双增长

HarmonyOS SDK

HMS Core

网易易盾流量多发反外挂落地实践

网易智企

安全 反外挂

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