坐看云起时|

一枚码农

园龄:7年6个月粉丝:5关注:1

django 分页

点击查看代码
from django.views import View
from django.forms.models import model_to_dict
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger


class Record(View):
    def get(self, request):
        query_set = GenerateRecord.objects.all().order_by('-id')
        page = request.GET.get('page')  # 获取分页数
        paginator = Paginator(query_set, 3)  # 设置一页显示多少条数据(news为要分页的数据)
        try:
            data = paginator.page(page)  # 获取当前页码的记录
        except PageNotAnInteger:
            data = paginator.page(1)  # 如果用户输入的页码不是整数时,显示第1页的内容
        except EmptyPage:
            data = paginator.page(paginator.num_pages)  # 如果用户输入的页数不在系统的页码列表中时,显示最后一页的内容
        ctx = [model_to_dict(instance) for instance in data]
        response = {
            'code': 0,
            'message': 'success',
            'data': {
                'page': page,
                'count': paginator.count,
                'context': ctx
            }
        }

        return JsonResponse(response, status=200)
另外 Paginator 类中有三个常用的属性,它们分别是:

count:表示所有页面的对象总数。
num_pages: 表示页面总数。
page_range: 下标从 1 开始的页数范围迭代器。

Page 对象有三个常用的属性:

object_list: 表示当前页面上所有对象的列表。
numberv: 表示当前页的序号,从 1 开始计数。
paginator: 当前 Page 对象所属的 Paginator 对象。
除此之外,Page 对象还拥有几个常用的函数:

has_next(): 判断是否还有下一页,有的话返回True。
has_previous():判断是否还有上一页,有的话返回 True。
has_other_pages():判断是否上一页或下一页,有的话返回True。
next_page_number(): 返回下一页的页码。如果下一页不存在,抛出InvalidPage 异常。
previous_page_number():返回上一页的页码。如果上一页不存在,抛出InvalidPage 异常。

本文作者:一枚码农

本文链接:https://www.cnblogs.com/yimeimanong/p/16017509.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   一枚码农  阅读(73)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
 
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 Sold Out Hawk
  2. 2 光辉岁月 Beyond
光辉岁月 - Beyond
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : 黄家驹

作曲 : 黄家驹

编曲 : Beyond

制作人 : Beyond/Gordon O'Yang

Synth Programming : Gordon O'Yang / 叶世荣

Mixed by Philip Kwok

钟声响起归家的讯号

钟声响起归家的讯号

在他生命里

仿佛带点唏嘘

黑色肌肤给他的意义

是一生奉献 肤色斗争中

年月把拥有变做失去

疲倦的双眼带着期望

今天只有残留的躯壳

迎接光辉岁月

风雨中抱紧自由

一生经过彷徨的挣扎

自信可改变未来

问谁又能做到

可否不分肤色的界限

可否不分肤色的界限

愿这土地里

不分你我高低

缤纷色彩闪出的美丽

是因它没有

分开每种色彩

年月把拥有变做失去

疲倦的双眼带着期望

今天只有残留的躯壳

迎接光辉岁月

风雨中抱紧自由

一生经过彷徨的挣扎

自信可改变未来

问谁又能做到

今天只有残留的躯壳

今天只有残留的躯壳

迎接光辉岁月

风雨中抱紧自由

一生经过彷徨的挣扎

自信可改变未来

问谁又能做到

Woo

Ah

Ah

今天只有残留的躯壳

今天只有残留的躯壳

迎接光辉岁月

风雨中抱紧自由

一生经过彷徨的挣扎

自信可改变未来

问谁又能做到

Woo

Ah

Ah

今天只有残留的躯壳

今天只有残留的躯壳

迎接光辉岁月

风雨中抱紧自由

一生经过彷徨的挣扎

自信可改变未来