zoukankan      html  css  js  c++  java
  • 手撸分页器

    批量插入数据

    在撸分页器之前,先往数据库中插入大量的数据做备用

    list = []
    for i in range(100000):
        list.append(models.Book(title = '第%s本书'%i))
    models.Book.objects.bulk_create(book_list) # 批量插入数据
    

    手撸分页器

    def index(request):
         # 1.获取用户想要访问的页码数
        current_page = request.GET.get('page',1)  # 如果没有page参数 默认就展示第一页
        # 转成整型
        current_page = int(current_page)
        # 2.每页展示10条数据
        per_page_num = 10
        # 3.定义起始位置和终止位置
        start_page = (current_page - 1) * per_page_num
        end_page = current_page * per_page_num
        # 4.统计数据的总条数
        book_queryset = models.Book.objects.all()
        all_count = book_queryset.count()
         # 5.求数据到底需要多少页才能展示完
        page_num, more = divmod(all_count,per_page_num)  # divmod(100,10)
        if more:
        	page_num += 1
        # page_num就觉得了 需要多少个页码
        page_html = ''
        xxx = current_page  # xxx就是用户点击的数字
        if current_page < 6:
        	current_page = 6
        for i in range(current_page-5,current_page+6):
        	if xxx == i:
                page_html += '<li class="active"><a href="?page=%s">%s</a></li>'%(i,i)
            else:
                page_html += '<li><a href="?page=%s">%s</a></li>' % (i, i)
        book_queryset = book_queryset[start_page:end_page]
        return render(request,'index.html',locals())
    
  • 相关阅读:
    python之处理excel表格
    Django下JWT的使用
    Flask的上下文管理
    模块循环引用
    博客声明及意义
    IPTABLES--iptables
    挂载U盘
    tar压缩解压
    iconv字符编码转换
    VirtualBox设置共享文件夹
  • 原文地址:https://www.cnblogs.com/jie9527-/p/11764489.html
Copyright © 2011-2022 走看看