一、安装django-prue-pagination

在pycharm中 File==》settings==》Project:项目名===》Project Interpreter==》点击“+”===》搜django-prue-pagination===》左下角Intall Package

二、在sttings.py中的相关代码:

.....#注册pure_pagination
INSTALLED_APPS = [.......    'pure_pagination',
]......
#追加pure_pagination配置代码
PAGINATION_SETTINGS={'PAGE_RANGE_DISPLAYED':10,'MARGIN_PAGES_DISPLAYED':2,'SHOW_FIRST_PAGE_WHEN_INVALID':True,
}

三、在views.py中添加分页代码:

......
from .models import ShopProfile
......
from pure_pagination import Paginator,EmptyPage,PageNotAnInteger......class ShopList(View):"""商铺列表"""def get(self,request):shops=ShopProfile.objects.all()# 每页五个p = Paginator(shops, 5)page = request.GET.get('page', 1)try:shops= p.page(int(page))except PageNotAnInteger:shops=p.page(1)return render(request,'shops_list.html',{'all_shops':shops})

四、在shop-list.html中的代码:

......
<!--收到后台分页后 返回的数据,然后进行遍历-->
<div id="portfoliolist">{% for shop in all_shops.object_list %}   <!--关键代码,一定注意这里!要遍历的不是all_shops而是all_object_list,这里是一个巨坑!不然会报错:

'Page' object is not iterable--><div class="portfolio shop" data-cat="shop"><div class="portfolio-wrapper"><img src="{% static 'logo/shop.jpg' %}" alt="" /><div class="label"><div class="label-text"><a class="text-title">{{ shop.name }}</a><span class="text-category">{{ shop.shop_sn }}</span></div><div class="label-bg"></div></div></div></div>{% endfor %}</div><!--分页的代码--><div class="fen-page"><ul class="pagelist pagination">{% if all_shops.has_previous %}<li class="long"><a href="?{{ all_shops.previous_page_number.querystring }}" class="prev">上一页</a></li>{% endif %}{% for page in all_shops.pages %}{% if page %}{% ifequal page all_shops.number %}<li class="active"><a href="?{{ page.querystring }}">{{ page }}</a></li>{% else %}<li><a href="?{{ page.querystring }}" class="page">{{ page }}</a></li>{% endifequal %}{% else %}<li class="none"><a href="">...</a></li>{% endif %}{% endfor %}{% if all_shops.has_next %}<li class="long"><a href="?{{ all_shops.next_page_number.querystring }}">下一页</a></li>{% endif %}</ul></div>

转载于:https://www.cnblogs.com/xuepangzi/p/8855608.html

django 分页功能相关推荐

  1. django分页功能

    采用django自带的Paginator功能 from django.core.paginator import Paginator food = foodInfo.objects.filter(fo ...

  2. django分页功能 views与templates

    分页 Django提供了数据分页的类,这些类被定义在django/core/paginator.py中 对象Paginator用于对列进行一页n条数据的分页运算 对象Page用于表示第m页的数据 Pa ...

  3. Django实现分页功能

    在本节中,我们将介绍 Django 为我们提供的高级模块,通过高级模块的学习,你会感受到 Django 的易用性如此之强,但是同时它又很复杂,所以在学习 Django 这样的重度框架的时候,我们一定要 ...

  4. django自带的分页功能

    django自带的分页功能 django中自带的分页功能有缺陷,但是也是一种思路,所以在下做一个整理,方便以后使用,还有服务各位小伙伴. django视图部分的代码.(注释才是重点) from dja ...

  5. Diango博客--16.稳定易用的 Django 分页库,完善分页功能(二)

    文章目录 0.思路引导 1.分页效果概述 2.分页思路 3.Django 第三方拓展:django-pure-pagination 4.自定义模板 0.思路引导 1)在前面我们通过 Django Pa ...

  6. django高级应用(分页功能)

    django高级应用(分页功能) 1.原生分页应用 前端html代码 1 <!DOCTYPE html> 2 <html lang="en"> 3 < ...

  7. 2019.03.20 mvt,Django分页

    MVT模式 MVT各部分的功能: M全拼为Model,与MVC中的M功能相同,负责和数据库交互,进行数据处理. V全拼为View,与MVC中的C功能相同,接收请求,进行业务处理,返回响应. T全拼为T ...

  8. 2 django系列之django分页与templatetags

    preface 当页面出现的条目多的时候,我们就需要使用分页功能了.Django作为一个知名的web框架,自然也提供了分页功能,下面说说它. Python-shell 练练手 在python下入手 先 ...

  9. Python-Django-Ajax分页功能实现

    Django-Ajax分页功能实现 前言 Django框架,ajax分页功能实现,包含MVT三大板块的代码及注释. 前端(T: 模板) 注意: 整个样式用的是Bootstrap,所以使用的时候要引入b ...

最新文章

  1. python 多线程及线程间通信
  2. linux uefo引导 win_基于UEFI和GPT模式下U盘安装windows8.1和Linux双启动教程
  3. 7、计算机图形学——图形管线渲染与纹理映射
  4. [PAL编程规范]SAP HANA PAL多项式回归预测分析Polynomial Regression编程规范FORECASTWITHPOLYNOMIALR(预测)...
  5. Redis笔记之常用命令
  6. 《编程珠玑(第2版•修订版)》—第2章2.5节原理
  7. 领英上面的experience和project的区别
  8. 区分多种类型的输入输出
  9. leetcode232. 用栈实现队列
  10. 安装应用程序时,提示以前的某个程序安装挂起的解决方法
  11. git远程仓库中master及其余分支间代码的合并
  12. Spring的组件自动扫描机制
  13. fscapture下载收费吗?_网课视频及短视频下载工具
  14. 国科大学习资料--自然语言处理(宗成庆)-2016期末考试题
  15. Yandex安装插件实现百度网盘不需要会员就能倍速播放
  16. java设计模式案例及使用
  17. 苹果自带计算机误删,苹果手机日历误删怎样恢复?恢复的小技巧
  18. 电脑黑屏只有鼠标箭头怎么修复 电脑开机黑屏的修复办法
  19. 获取中国银行网页中外汇率
  20. 【沃顿商学院学习笔记】宏观经济学——03国际移民与城市发展Immigration and Cities

热门文章

  1. 表格缓存问题_缓存常见问题,一网打尽哦!
  2. smooth l1(huber)+binary cross entropy详解(tensorflow+pytorch)
  3. mysql数据库添加索引和去重
  4. nafxcw.lib与LIBCMT.lib在vs2008中链接冲突解决方案
  5. LeetCode每日一题 977. 有序数组的平方
  6. pytorch 之 加载不同形式的预训练模型
  7. 英文单词 hard
  8. 对比vector、deque、list的优缺点
  9. NDK建立多个共享库
  10. 反距离加权插值法例题_GMS插值中的反距离权重法(Inverse distance weighted)