Django实现快速分页的方法实例


Posted in Python onOctober 22, 2017

前言

本文主要给大家介绍了关于Django快速分页的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

Django实现快速分页的方法实例

分页

在web开发中,对大量的商品进行分页显示,是常见的需求,django对分页直接提供了现成的函数,让我们的开发更为快速便捷...

Django实现快速分页的方法实例

动图_Django快速分页

示例代码:

在后端(视图函数中)

from django.shortcuts import render
from .models import ShowMyComputer
# 引入方法
from django.core.paginator import Paginator
# Create your views here.

def show(request, page_id):

 # 获取需要分页的对象集合
 all_goods = ShowMyComputer.objects.all()

 # 创建分页对象
 paginator = Paginator(all_goods, 3)

 # 根据当前页码,确定返回的数据
 current_page = paginator.page(page_id)

 # 保证前端取到的"页数"为整型
 page_id = int(page_id)


 return render(request, 'computer/list.html', locals())

在前端(html模板中)

<body>
 {# 展示当前页面的数据 #}
 {% for goods in current_page %}
 <div class="my_goods">

  <div class="goods_image">  
   ![图片占位](/static/{{ goods.goods_image }})
  </div>
  
  <br>
  
  <div class="goods_name">{{ goods.goods_name }}</div>

 </div>

 {% endfor %}


 <div class="page_num">

 {# 判断'上一页'是否存在,如果存在则保留`上一页`标签 ,反之则不显示`上一页`标签 #}
 {% if current_page.has_previous %}

  <a href="{% url 'computer:show' current_page.previous_page_number %}" rel="external nofollow" >上一页</a>

 {% endif %}


 {# 确定分页数量 #}

 {% for index in paginator.page_range %}

  {# 如果页码与当前页面相符,则添加红色背景 #}
 {% if page_id == index %}
  <a href= "{% url 'computer:show' index %}" style="background-color: red" >{{ index }}</a>
  {# 如果页面与当前页面不符,则正常显示 #}
 {% else %}
  <a href="{% url 'computer:show' index %}" rel="external nofollow" >{{ index }}</a>
 {% endif %}

 {% endfor %}

 {# 判断'下一页'是否存在,如果存在则保留`下一页`标签 ,反之则不显示`下一页`标签 #}
 {% if current_page.has_next%}

  <a href="{% url 'computer:show' current_page.next_page_number %}" rel="external nofollow" >下一页</a>

 {% endif %}


 </div>

</body>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python简单进程锁代码实例
Apr 27 Python
python字符串编码识别模块chardet简单应用
Jun 15 Python
Python基于lxml模块解析html获取页面内所有叶子节点xpath路径功能示例
May 16 Python
Python爬虫——爬取豆瓣电影Top250代码实例
Apr 17 Python
django项目简单调取百度翻译接口的方法
Aug 06 Python
Django实现文件上传下载功能
Oct 06 Python
Python3离线安装Requests模块问题
Oct 13 Python
Python如何实现的二分查找算法
May 27 Python
Python pexpect模块及shell脚本except原理解析
Aug 03 Python
python map比for循环快在哪
Sep 21 Python
通过实例解析python and和or使用方法
Nov 14 Python
selenium+headless chrome爬虫的实现示例
Jan 08 Python
python使用SMTP发送qq或sina邮件
Oct 21 #Python
python爬虫headers设置后无效的解决方法
Oct 21 #Python
Python 结巴分词实现关键词抽取分析
Oct 21 #Python
恢复百度云盘本地误删的文件脚本(简单方法)
Oct 21 #Python
Python实现对百度云的文件上传(实例讲解)
Oct 21 #Python
Python3操作SQL Server数据库(实例讲解)
Oct 21 #Python
Python3实现简单可学习的手写体识别(实例讲解)
Oct 21 #Python
You might like
在PHP里得到前天和昨天的日期的代码
2007/08/16 PHP
php两点地理坐标距离的计算方法
2018/12/29 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
ExtJS 2.0实用简明教程 之获得ExtJS
2009/04/29 Javascript
关于取不到由location.href提交而来的上级页面地址的解决办法
2009/07/30 Javascript
JavaScript 动态创建VML的方法
2009/10/14 Javascript
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
最短的IE判断代码
2011/03/13 Javascript
JS代码优化技巧之通俗版(减少js体积)
2011/12/23 Javascript
JS 面向对象之继承---多种组合继承详解
2016/07/10 Javascript
Js自定义多选框效果的实例代码
2017/07/05 Javascript
vue axios用法教程详解
2017/07/23 Javascript
使用canvas进行图像编辑的实例
2017/08/29 Javascript
nodejs 最新版安装npm 的使用详解
2018/01/18 NodeJs
如何换个角度使用VUE过滤器详解
2019/09/11 Javascript
js 实现watch监听数据变化的代码
2019/10/13 Javascript
vue中解决chrome浏览器自动播放音频和MP3语音打包到线上的实现方法
2020/10/09 Javascript
[00:27]DOTA2荣耀之路2:Patience from zhou!
2018/05/24 DOTA
python安装教程 Pycharm安装详细教程
2017/05/02 Python
Python实现对一个函数应用多个装饰器的方法示例
2018/02/09 Python
将字典转换为DataFrame并进行频次统计的方法
2018/04/08 Python
Python实现的redis分布式锁功能示例
2018/05/29 Python
python skimage 连通性区域检测方法
2018/06/21 Python
Python+Pandas 获取数据库并加入DataFrame的实例
2018/07/25 Python
python opencv实现图片旋转矩形分割
2018/07/26 Python
Python爬虫爬取新浪微博内容示例【基于代理IP】
2018/08/03 Python
python+gdal+遥感图像拼接(mosaic)的实例
2020/03/10 Python
解决pycharm中的run和debug失效无法点击运行
2020/06/09 Python
python 基于pygame实现俄罗斯方块
2021/03/02 Python
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
2014/07/21 HTML / CSS
微信浏览器左上角返回按钮拦截功能
2017/11/21 HTML / CSS
北美主要的汽车零部件零售商:AutoShack.com
2019/02/23 全球购物
给定一个时间点,希望得到其他时间点
2013/11/07 面试题
毕业班联欢会主持词
2014/03/27 职场文书
CSS3 实现的图片悬停的切换按钮
2021/04/13 HTML / CSS
MySQL 数据类型详情
2021/11/11 MySQL