首页 > 其他 > 详细

Django Paginator分页器

时间:2019-11-21 16:09:37      阅读:87      评论:0      收藏:0      [点我收藏+]

如何实现在django中实现分页效果,我使用的是django自带的分页器paginator
具体是使用办法是这样的首先引用from django.core.paginator import Paginator
首先得到你需要实现分页的文章:article_list = Article.objects.all()
之后规定一个变量paginator用这个变量去储存分页结果
paginator = Paginator(article_list, 5)
这里Paginator中第一个参数是需要分页的目标,第二个参数是你想要多少个目标分成一页
这里是首先我的目标是article_list之后我需要每5篇文章分成一页

之后在django中我们还需要去获取到每一页的url
page = int(request.GET.get(‘page‘,1))
页数page使用request.GET的方法获取,get的第一个参数是page,如果没有获取到,自动获取第1页
article_list = paginator.page(page)

然后得到了page页对应的文章列表

 

代码展示:

# 定义首页方法
def index(request):
    try:
        article_list = Article.objects.all()
        article_list = getPage(request,article_list)
    except Exception as e:
        logger.error(e)
    return render(request, index.html, locals())


# 重构分页代码
def getPage(request, article_list):
    paginator = Paginator(article_list, 5)
    try:
        page = int(request.GET.get(page, 1))
        article_list = paginator.page(page)
    except (EmptyPage, InvalidPage, PageNotAnInteger):
        article_list = paginator.page(1)
    return article_list

 

Django Paginator分页器

原文:https://www.cnblogs.com/hooo-1102/p/11905810.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!