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 tkinter模块弹出窗口及传值回到主窗口操作详解
Jul 28 Python
python Opencv将图片转为字符画
Feb 19 Python
Python文件读写保存操作的示例代码
Sep 14 Python
python运行时强制刷新缓冲区的方法
Jan 14 Python
Python使用Pickle模块进行数据保存和读取的讲解
Apr 09 Python
Python3.5 Pandas模块之Series用法实例分析
Apr 23 Python
Python生成MD5值的两种方法实例分析
Apr 26 Python
python 处理微信对账单数据的实例代码
Jul 19 Python
浅析python,PyCharm,Anaconda三者之间的关系
Nov 27 Python
python通过matplotlib生成复合饼图
Feb 06 Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
Feb 11 Python
Python+DeOldify实现老照片上色功能
Jun 21 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出错界面
2006/10/09 PHP
php google或baidu分页代码
2009/11/26 PHP
php 广告调用类代码(支持Flash调用)
2011/08/11 PHP
基于JavaScript实现 获取鼠标点击位置坐标的方法
2013/04/12 Javascript
文件编码导致jquery失效的解决方法
2013/06/26 Javascript
js数字转换为float,取N位小数
2014/02/08 Javascript
javascript运动效果实例总结(放大缩小、滑动淡入、滚动)
2016/01/08 Javascript
JQuery ztree带筛选、异步加载实例讲解
2016/02/25 Javascript
Jquery跨域获得Json的简单实例
2016/05/18 Javascript
解析javascript图片懒加载与预加载的分析总结
2016/10/27 Javascript
jQuery+HTML5实现弹出创意搜索框层
2016/12/29 Javascript
微信小程序 ecshop地址三级联动实现实例代码
2017/02/28 Javascript
knockoutjs模板实现树形结构列表
2017/07/31 Javascript
微信小程序switch开关选择器使用详解
2018/01/31 Javascript
webpack组织模块打包Library的原理及实现
2018/03/10 Javascript
在vue中封装方法以及多处引用该方法详解
2020/08/14 Javascript
javascript实现左右缓动动画函数
2020/11/25 Javascript
[04:42]2015国际邀请赛CDEC战队晋级之路
2015/08/13 DOTA
[01:09:13]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第三场 1月19日
2021/03/11 DOTA
[01:11:21]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第三场 3月7日
2021/03/11 DOTA
给Python中的MySQLdb模块添加超时功能的教程
2015/05/05 Python
Python实现将一个正整数分解质因数的方法分析
2017/12/14 Python
sublime python3 输入换行不结束的方法
2018/04/19 Python
python psutil监控进程实例
2019/12/17 Python
Python限制内存和CPU使用量的方法(Unix系统适用)
2020/08/04 Python
python进行OpenCV实战之画图(直线、矩形、圆形)
2020/08/27 Python
Python程序慢的重要原因
2020/09/04 Python
运行python提示no module named sklearn的解决方法
2020/11/29 Python
五分钟学会怎么用python做一个简单的贪吃蛇
2021/01/12 Python
3个CCIE对一个工程师的面试题
2012/05/06 面试题
临床专业自荐信
2014/06/22 职场文书
食品安全演讲稿
2014/09/01 职场文书
检讨书1000字
2014/10/11 职场文书
2014年乡镇安全生产工作总结
2014/12/02 职场文书
读后感作文评语
2014/12/25 职场文书
使用这 6个Vue加载动画库来减少我们网站的跳出率
2021/05/18 Vue.js