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实现的udp协议Server和Client代码实例
Jun 04 Python
python3将视频流保存为本地视频文件
Jun 20 Python
Python 打印中文字符的三种方法
Aug 14 Python
pyqt5 实现工具栏文字图片同时显示
Jun 13 Python
Python数据结构与算法(几种排序)小结
Jun 22 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
Aug 12 Python
Linux下通过python获取本机ip方法示例
Sep 06 Python
Anaconda 查看、创建、管理和使用python环境的方法
Dec 03 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
Jan 28 Python
Python学习笔记之装饰器
Aug 06 Python
Python爬虫进阶之爬取某视频并下载的实现
Dec 08 Python
教你怎么用Python操作MySql数据库
May 31 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
phpstorm编辑器乱码问题解决
2014/12/01 PHP
php内存缓存实现方法
2015/01/24 PHP
PHP设计模式入门之迭代器模式原理与实现方法分析
2020/04/26 PHP
JQuery 初体验(建议学习jquery)
2009/04/25 Javascript
为jquery.ui.dialog 增加“在当前鼠标位置打开”的功能
2009/11/24 Javascript
Javascript 匿名函数及其代码模式原理
2010/03/19 Javascript
Web开发者必备的12款超赞jQuery插件
2010/12/03 Javascript
解析javascript 浏览器关闭事件
2013/07/08 Javascript
javascript实现div浮动在网页最顶上并带关闭按钮效果实例
2013/08/13 Javascript
js中的this关键字详解
2013/09/25 Javascript
使用jQuery判断IE浏览器版本的代码
2014/06/14 Javascript
java和javascript获取word文档的书签位置对比
2014/06/19 Javascript
处理文本部分内容的TextRange对象应用实例
2014/07/29 Javascript
javascript运算符语法全面概述
2016/07/14 Javascript
Angular学习笔记之angular的$filter服务浅析
2016/11/12 Javascript
[03:08]迎霜节狂欢!2018年迎霜节珍藏Ⅰ一览
2018/12/25 DOTA
Python中的探索性数据分析(功能式)
2017/12/22 Python
Python tornado队列示例-一个并发web爬虫代码分享
2018/01/09 Python
PyQt5每天必学之关闭窗口
2018/04/19 Python
数据清洗--DataFrame中的空值处理方法
2018/07/03 Python
对Python 除法负数取商的取整方式详解
2018/12/12 Python
Ubuntu下Anaconda和Pycharm配置方法详解
2019/06/14 Python
python自动循环定时开关机(非重启)测试
2019/08/26 Python
Python数据持久化存储实现方法分析
2019/12/21 Python
Python requests HTTP验证登录实现流程
2020/11/05 Python
Html5页面内使用JSON动画的实现
2019/01/29 HTML / CSS
Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
2015/01/27 面试题
高中历史教学反思
2014/02/08 职场文书
幼儿教师寄语集锦
2014/04/03 职场文书
大学优秀班主任事迹材料
2014/05/02 职场文书
暑假安全教育广播稿
2014/09/10 职场文书
领导干部民主生活会自我剖析材料范文
2014/09/20 职场文书
检讨书范文2000字
2015/01/28 职场文书
我的中国梦主题教育活动总结
2015/05/07 职场文书
2016党员党章学习心得体会
2016/01/14 职场文书
win10+anaconda安装yolov5的方法及问题解决方案
2021/04/29 Python