Django实现快速分页的方法实例
作者:_昭昭_ 发布时间:2022-12-27 06:02:30
标签:django,快速分页
前言
本文主要给大家介绍了关于Django快速分页的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
分页
在web开发中,对大量的商品进行分页显示,是常见的需求,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>
来源:http://www.jianshu.com/p/644442bcbfcc
0
投稿
猜你喜欢
- 在学习与运用ASP中,response对象涉及到的方面也比较多,想全部都掌握也并非一两天的事,我也是最近才发现response对象中居然有这
- 前言最近将使用爬虫爬取的链接保存到 mysql 数据库中时,发现我将链接使用 json_encode 保存时候,在数据库中却显示了转义字符,
- 本人曾经用过的备份方式有:mysqldump、mysqlhotcopy、BACKUP TABLE 、SELECT INTO OUTFILE,
- 简单的Python代码:用户登录注册利用业余时间,写了一个用户进行登录注册的代码,非常简单。主要实现的功能是:1、可以进行用户登录,在用户进
- php获取文件创建时间、修改时间常用代码filemtime ( string filename )返回文件上次被修改的时间,出错时返回 FA
- 前言接口在面向对象编程中是经常使用的招式,也是体现多态很重要的手段。是的。Golang中也有接口这玩意儿。1.为什么需要接口?多数情况下,数
- 描述的意思是HTML为中心的前端开发也差不多是web标准的意思。1.HTML是基础2.CSS依靠选择符提供视觉;3.Javascript 依
- 原文地址:30 Days of Mootools 1.2 Tutorials - Day 6 - Manipulating HTML通过Mo
- 还记得以前在工作中,将爬来的其它网站的数据导到xml。但是会遇到一个问题:即网页会有ascII的控制字符。一开始以为是别人为了防止采集而加入
- 本文主要介绍Python中,class(类)的装饰器@staticmethod和@classmethod的使用示例代码和它们的区别。1、@s
- 今天我要为大家介绍的是XPath,XPath是导航和查询XML文档的语言。我们从一个函数开始。UpdateXML()函数我们已经花了很多时间
- Access 操作很简单,具体不步骤如下:打开你mdb数据库,工具-->数据库实用工具-->压缩和修复数据库(c)... SQL SERVE
- 1.将下面一段代码插入<head>与</head>之间:<script> function&
- 迭代器&生成器在 Python 中,迭代器和生成器都是用来遍历数据集合的工具,可以按需逐个生成或返回数据,从而避免一次性加载整个数据
- Python SMTP发送邮件SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址
- 用ASP实现搜索引擎的功能是一件很方便的事,可是,如何实现类似3721的智能搜索呢?比如,当在搜索条件框内输入“中国人民”时,自动从中提取“
- 本文实例讲述了Python3实现对列表按元组指定列进行排序的方法。分享给大家供大家参考,具体如下:Python版本: python3.+ 运
- 被AJAX中DOM的操作郁闷了好几天,今天总算搞明白了,自学就是苦啊,苦的一把鼻涕一把泪的,把教训些出来,给后来者提个醒,老鸟就不要看了。下
- 我们在设计网站的时候,有的时候需要根据页面元素的属性来制作不同的样式,比如,对于不同的链接类型,显示不同的链接图标。CSS的选择器是个很有用
- 联合结果集 新建临时工数据表 代码如下:CREATE TABLE T_TempEmployee (FIdCardNumber VARCHAR