首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django分页

一.分页 分页功能是所有网页上都需要提供的功能,当要展示的条目比较多时,就需要进行分页,不但能减小数据库读取数据压力,也有利于用户浏览。...Django为我们提供了一个Paginator分页工具,这个类帮助我们来管理分页数据,该类存放在django/core/paginator.py它可以接收列表、元组或其他可迭代对象。...实例: from django.core.paginator import Paginator lis = ['yven','lqz','egon','hwt','lyf'] # 对lis进行分页,每页...(p.count) # 总共几页,显示3 print(p.num_pages) # 分页范围,返回一个可迭代对象 显示range(1,4) print(p.page_range) # 获取第一页....has_previous()) # 判断是否其他页 显示True print(page2.has_other_pages()) # 获取下一页页码 显示3 print(page2.next_page_number

73430
您找到你想要的搜索结果了吗?
是的
没有找到

Django分页的用法

1、准备基础数据 2、一次性展示数据 3、引入分页 Django是一个大而全的框架。...需要明确的是,传参进行分页获取分页后的数据,一般都是通过向服务发送get请求的方式实现的,在向后端服务发送查看数据的同时可以携带一个或多个参数并发送get请求来实现分页查看功能 前面总结过drf框架中分页的使用...,本文主要介绍在利用Django开发MVT模型项目时分页的使用 1、准备基础数据 设计表模型 为了体现分页的效果,需要先创建一个表并准备较多数据,模型如下 from django.db import...引入分页后,可以对全局分页对象和单页对象进行相关操作,相关语法 # 引入分页 from django.core.paginator import Paginator...在视图函数中:处理相关异常;传递相关参数;当页码较多时只显示分页码,例如最多时总共10个页码,当前页码始终在中间显示;单独处理出现边界情况,负数页码的情况及最大页码用完的情况 from django.core.paginator

1.1K10

使用Django实现分页功能

要使用Django实现分页,必须从Django中导入Paginator模块 from django.core.paginator import Paginator 假如现在有150条记录要显示,每页显示...Paginator对象 >>> print(page1.count)#打印总的记录数,即列表list1的长度 150 >>> print(page1.num_pages)#打印总的页数,即总记录数除以每页显示的条目数...() failed> >>> page1.page(15)#打印第15页的对象 例子,使用Django实现一个分页效果 后端代码: #导入render和HttpResponse...(1) # 如果用户输入的页码不是整数时,显示第1页的内容 except EmptyPage: post_list = paginator.page(paginator.num_pages...) # 如果用户输入的页数不在系统的页码列表中时,显示最后一页的内容 return render(request,'blog/index.html',locals()) 前端代码: 在需要分页的地方加入

88120

Django分页功能改造,一比一还原百度搜索的分页效果

Django设计分页Django里面可以定义一个标签函数来做分页,这个标签函数的主要目的就是输出要显示页码列表,然后定义一个分页模板来渲染html页面即可。...定义标签函数 只要是视图继承generic.ListView,我定义的这个分页标签函数都是可以直接使用的,如果是自己定义的分页,只需要修改标签函数的参数,拿到分页总数和当前页码也可以通用。...如果分页总数不大于最大显示数,则直接显示所有页码。如果总页码大于最大显示数,函数会保证当前页码在中间,同时保证能显示最多指定数量的页码。...我这里使用的到了另一个标签函数来处理得到每个页码的跳转地址,而不是像我看到的所有讲Django分页的做法直接使用href="?...page={{ page }}就会导致设置生效,所以我这里定义了一个标签函数来处理当前的地址,大概用途就是只替换链接中的分页参数,比如这里是page,这个参数也是可以根据实际来设置的。

33120

Django自定义实现分页

1、分析和推导 1.1 当前页 1.2 起始位置和终止位置 1.3 添加按钮传递页码数 2、方法的封装 2.1 分页类 2.2 视图函数 2.3 模板页面 前面的文章中分别介绍了drf框架中分页的使用及...Django框架中分页的用法,其重点在于视图函数和模板页面如何利用自带的分页的相关参数进行数据传递和页面渲染 本文继续介绍分页,即自定义分页如何实现,其实也就是如何使用自定义的方式计算出和上面类似自带的分页的相关参数值...1、分析和推导 分页中的关键信息:当前页、每页展示多少条、起始位置、终止位置 1.1 当前页 思路:浏览携带页码发送get请求,获取当前页信息。...2、方法的封装 上面是自定义分页开发流程的基本推导思路,最后将自定义分页进行封装 2.1 分页类 mypage.py class Pagination(object): def __init...book in page_queryset %} { book.title } {% endfor %} {#利用自定义分页直接显示分页样式

95020

稳定易用的 Django 分页库,完善分页功能

分页效果概述 一个比较完善的分页效果应该具有以下特性,就像上图展示的那样,很多网站都采用了类似这种的分页导航方式。 始终显示第一页和最后一页。 当前页码高亮显示显示当前页码前后几个连续的页码。...如果两个页码号间还有其它页码,中间显示省略号以提示用户。 分页思路 如果需要自己来实现分页效果,我们会怎么做呢?...先来分析一下导航条的组成部分,可以看到整个分页导航条其实可以分成 7 个部分: 第 1 页页码,这一页需要始终显示。 第 1 页页码后面的省略号部分。...但要注意如果第 1 页的页码号后面紧跟着页码号 2,那么省略号就不应该显示。 当前页码的左边部分,比如这里的 3-4。 当前页码,比如这里的 5。 当前页码的右边部分,比如这里的 6-7。...最后一页页码前面的省略号部分。但要注意如果最后一页的页码号前面跟着的页码号是连续的,那么省略号就不应该显示。 最后一页的页码号。

89020

python测试开发django-115.Paginator分页展示table表格数据

前言 django自带的分页Paginator,可以实现分页 Paginator 分页 paginator模块有3个跟分页相关的类 Paginator: 分页对象 PageNotAnInteger...: 页码不是一个整数时引发该异常 EmptyPage: 页码不在有效范围时(即数据为空)引发该异常 导入Paginator类,可以看到一些内置属性 from django.core.paginator...orphans=0, 如果最后一页的数据小于这个值,会合并到上一页 allow_empty_first_page=True, 允许首页为空 ,默认为True 分页常用的方法 Paginator类实例化后几个常用的属性和方法...previous_page_number() 上一页的页码 next_page_number() 下一页的页码 start_index() 返回当前页上的第一个对象,相对于分页列表的所有对象的序号,从1...,右边是实现效果,可以在线调试,非常方便 django 视图函数 django 视图函数使用分页Paginator,根据页面url上的请求参数page来获取当前是第几页。

91310

Django Pagination 简单分页

当博客上发布的文章越来越多时,通常需要进行分页显示,以免所有的文章都堆积在一个页面,影响用户体验。Django 内置的 Pagination 能够帮助我们实现简单的分页功能。...image.png 这里,Django 的官方文档中给出了一个在视图函数中对列表进行分页的示例,这个视图函数获取一个联系人列表并对其分页: from django.core.paginator import...,显示第一页 contacts = paginator.page(1) except EmptyPage: # 如果用户请求的页码号超过了最大页码号,显示最后一页...进一步拓展 使用 Django 内置的 Pagination 只能实现上面的简单分页效果,但通常更加高级的分页效果应该像下图这样: image.png 当前页面高亮显示,且显示当前页面前后几页的页码,...始终显示第一页和最后一页的页码,中间可能还有省略号的效果,表示还有未显示页码

2.1K50

通过 Django Pagination 实现简单分页

这里 Django 的官方文档中给出了一个在视图函数中对列表进行分页的示例,这个视图函数获取一个联系人列表并对其分页: from django.core.paginator import Paginator...,显示第一页 contacts = paginator.page(1) except EmptyPage: # 如果用户请求的页码号超过了最大页码号,显示最后一页...在模板中设置分页导航 接下来便是在模板中设置分页导航,比如上一页、下一页的按钮,以及显示一些页面信息。我们这里设置和 Django 官方博客那样的分页导航样式(具体的样式见上图)。...进一步拓展 使用 Django 内置的 Pagination 只能实现上面的简单分页效果,但通常更加高级的分页效果应该像下图这样: 当前页面高亮显示,且显示当前页面前后几页的页码,始终显示第一页和最后一页的页码...,中间可能还有省略号的效果,表示还有未显示页码

91220

使用 Django Pagination 实现简单的分页功能

当网页上显示的数据过多时,通常需要进行分页显示Django 内置的 Pagination 能够帮助我们实现简单的分页功能。...在模板中设置分页导航 接下来便是在模板中设置分页导航,比如上一页、下一页的按钮,以及显示一些页面信息。我们这里设置和 Django 官方博客那样的分页导航样式(具体的样式见上图)。...在你想要显示分页信息的地方使用下面的代码。...进一步拓展 使用 Django 内置的 Pagination 只能实现上面的简单分页效果,但通常更加高级的分页效果应该像下图这样: image.png 当前页面高亮显示,且显示当前页面前后几页的页码,...始终显示第一页和最后一页的页码,中间可能还有省略号的效果,表示还有未显示页码

2K90
领券