django实现分页功能详解

本文详细介绍了如何在Django项目中实现分页功能。首先,通过命令生成模型并添加数据,接着在views中引入models存储数据。然后,利用Django内置的Paginator实现分页,将数据传递给前端。在HTML页面中,展示总页数,并创建底部分页按钮。通过判断has_previous和has_next属性,实现上一页和下一页的跳转。同时,提供页码列表和跳转功能,确保用户能便捷地导航到指定页码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先展示整体代码
views

from django.shortcuts import render,HttpResponse
from .models import *
import time
from django.core.paginator import Paginator
# Create your views here.
# def create_data(request):
#     now_time = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
#     for i in range(30,30):
#         s = ''
#         s = s+'book%s'%i
#         borrowBook.objects.create(name=s,time=now_time)
#         s=''
#     return HttpResponse(111)
def index(request,pindex):
    book_obj = borrowBook.objects.all()
    books = book_obj.values_list()
    print(type(books))
    paginator = Paginator(books,5)
    if pindex == '':
        pindex=1
    else:
        int(pindex)
    num = paginator.num_pages
    page = paginator.page(pindex)
    print('page',page)
    return render(request,'index.html',{
   
   'page':page,'num':num})

html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
</head>
<body>{
   
   {
   
    num }}页
跳转到第<input type="number" style="width: 50px"><</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值