django 分页

导入模块

from django.core.paginator import Paginator
# 分页模块
from blog.models import Article,Category,Tag
# 博客
post = Article.objects.all() # 博客所有

page=Paginator(post, 9) # 将文章数分页(9)

page.count # 总数据量
page.num_pages # 分页数
page.page_range  # 显示的是页数的标记 就是按钮的数目

views.py

from django.core.paginator import Paginator
from django.views import View


class IndexView(View):
    """
    cbv 基于类视图
    """
    def get(self, request):

        post_all = Article.objects.all()  # 博客所有
        page = Paginator(post_all, 5)  # 将文章数分页(2)

        page_num = page.num_pages  # 分页数总数
        page_range = page.page_range  # 页码的列表数目

        page_first = page.page(1)  # 第1页的page对象
        # page_first_list = page_first.object_list  # 首页展示文章条数

        pageRange = range(1, 6)  # 显示分页按钮数量
        page_count = page.count  # 总数据量

        try:
            # GET请求方式,get()获取指定Key值所对应的value值
            # 获取page的值,url内输入的?page = 页码数  显示你输入的页面数目 默认为第1页
            num = request.GET.get('page', 1)
            # 获取第几页
            number = page.page(1)
        except PageNotAnInteger:
            # 如果输入的页码数不是整数,那么显示第一页数据
            number = page.page(1)
        except EmptyPage:
            number = page.page(page.num_pages)

        currentPage = page.page(num)  # 当前页面

        article_list = currentPage.object_list

        tag_all = [tag for tag in Tag.objects.all()]  # tags

        if request.user.is_authenticated:  # 登录
            user_login = True

        return render(request, 'index.html', locals())

urls.py

    path('', views.IndexView.as_view(), name="index"),

Django-pure-pagination第三方模块

https://www.jianshu.com/p/77a8ea421e22 https://blog.csdn.net/weixin_42134789/article/details/80568089 https://blog.csdn.net/dimples_54/article/details/77995058

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • openfire部署

    http://igniterealtime.org/downloads/index.jsp

    以谁为师
  • python 类

    2019年3月30日 ⋅ 浏览量: 21    ...

    以谁为师
  • Lniux服务器安全访问控制

    /etc/hosts.deny *脚本 /root/SSH_Deny_Rule.sh

    以谁为师
  • 13.Django基础之django分页

      我们使用脚本批量创建一些测试数据(将下面的代码保存到bulk_create.py文件中放到Django项目的根目录,直接执行即可。):

    changxin7
  • CRM之分页

      分页功能在网页中是非常常见的一个功能,其作用也就是将数据分割成多个页面来进行显示。

    py3study
  • optimize 回收表空间的一些说明

    线上服务器,有张大表需要用pt-archiver根据时间划分归档大量数据到另一个新表中。原先200G的表,在归档完成后,du -hs 显示依然是200G的大小,...

    二狗不要跑
  • Django自定义分页

    py3study
  • SAP Spartacus Header区域的渲染逻辑

    文件:projects\storefrontlib\src\cms-structure\page\page-layout\page-layout.service...

    Jerry Wang
  • iOS - autoreleasepool and @autoreleasepool

    + 在一个自动引用计数的环境中(并不是垃圾回收机制),一个包含了多个对象的 NSAutoreleasePool 对象能够接收 autorelease 消息并且...

    Mitchell
  • Linux内存描述之内存页面page--Linux内存管理(四)

    分页单元可以实现把线性地址转换为物理地址, 为了效率起见, 线性地址被分为固定长度为单位的组, 称为”页”, 页内部的线性地址被映射到连续的物理地址. 这样内核...

    233333

扫码关注云+社区

领取腾讯云代金券

,,