• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Django实现简单分页功能的方法详解

python 搞代码 4年前 (2022-01-08) 30次浏览 已收录 0个评论

这篇文章主要介绍了Django实现简单分页功能的方法,结合实例形式分析了django的第三方模块django-pure-pagination的安装、使用及实现分页的相关操作技巧,需要的朋友可以参考下

本文实例讲述了Django实现简单分页功能的方法。分享给大家供大家参考,具体如下来源gao@dai!ma.com搞$代^码网

使用django的第三方模块django-pure-pagination

安装模块:

 pip install django-pure-pagination 

将’pure_pagination’添加到settings.py文件中

 INSTALLED_APPS = ( ... 'pure_pagination', ) 

在view.py文件中

 from django.shortcuts import render rom .models import mymodel from pure_pagination import Paginator, EmptyPage, PageNotAnInteger def NewsList(request): all_news = mymodel.objects.all().order_by('-add_time') # 分页功能 try: page = request.GET.get('page', 1) except PageNotAnInteger: page = 1 p = Paginator(all_news, 3, request=request) news = p.page(page) return render(request, 'rdxw.html', {'all_news': news}) 

在template.py文件中调用view传递的参数’all_news’需要加上’.object_list’

 {% extends 'base.html' %} {% block content %} <ul> {% for new in all_news.object_list %} <li>{{new.content}}</li> {% endblock %} </ul>

实现翻页的部分:

 <div class="pageturn"> <ul class="pagelist"> {% if all_news.has_previous %} <li class="long">上一页</li> {% endif %} {% for page in all_news.pages %} {% if page %} {% ifequal page all_news.number %} <li class="active">{{ page }}</li> {% else %} <li>{{ page }}</li> {% endifequal %} {% else %} <li class="none">...</li> {% endif %} {% endfor %} {% if all_news.has_next %} <li class="long">下一页</li> {% endif %} </ul></div>

样式较文档提供的简化了很多,方便使用。

 .pageturn .pagelist { display: table-cell; vertical-align: middle; overflow: hidden; } .pageturn li { width: 30px; height: 30px; line-height: 30px; margin-left: 10px; float: left; text-align: center; } .pageturn li:first-child { margin-left: 0; } .pageturn li:hover a, .pageturn .active a { background: #717171; color: #fff; border-color: #eaeaea; } .pageturn a { border: 1px solid #eaeaea; display: block; height: 28px; color: #6c6c6c; } .pageturn .long { width: 100px; } .pageturn .none a { border: 0; } .pageright { float: right; width: auto; display: inline; clear: none; margin-top: 10px; } 

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python加密解密算法与技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

以上就是Django实现简单分页功能的方法详解的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Django实现简单分页功能的方法详解

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址