Django分页前后端处理

1.view处理

view.py

from django.core.paginator import Paginator
def book_list()
    page = request.GET.get('page')# 页码
    limit = request.GET.get('limit')# 每页n条
    questset = BookInfo.objects.all().order_by('-create_time')
    lens = len(questset)
    pages = Paginator(questset, int(limit))
    if page:
        questset = pages.page(int(page))
    else:
        questset = pages.page(1)
    detail = []
    for book in BookInfo:
        bk = {
            'name':book.name,
            'username':book.account.name,
            'datatime':book.create_time
        }
        detail.append(bk)
    context = {
        'data':detail,
        'len':lens,
        'pages_list':list(range(a,int(lens/limit)+1)),
        'limit':limit,
    }
    return render(request, 'list.html', context=context)
2.jinja模板

list.html

{% for bk in detail %}
          <table>
            <tr>
              <td style="width: 70%">{{ bk.name }}</td>
              <td style="width: 10%">{{ bk.username }}</td>
              <td style="width: 20%">{{bk.datatime }}</td>
            </tr>
          </table>
          <hr>
{% endfor %}
<div style="padding: 1px 30px">
    <span class="layui-laypage-count">共 {{ len }} 条</span>
    {% for i in pages_list%}
      <a href="/?page={{i}}" data-page="{{ i }}" onclick="btnOnclick({{ i }})">{{i}}</a>
    {% endfor %}
    <span class="layui-laypage-count">{{limit}}条/页</span>
</div>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值