django分页的东西, 不详细, 但是也足够了。
视图函数中的代码
from django.shortcuts import render, HttpResponse, redirect import json from django.core.paginator import Paginator, EmptyPage from ajaxdemo.models import Bookdef bool_list(request):book_list = Book.objects.all()# 分页器 Paginator(要进行分页的数据,每页显示几条数据)paginator = Paginator(book_list, 10) # 得到总的 paginator对象# print("count:", paginator.count) # 数据总数num_pages = paginator.num_pages # 总页数# page_range = paginator.page_range # 页码的列表current_page_num = int(float(request.GET.get("page", 1)))if num_pages > 11:if current_page_num - 5 < 1:page_range = range(1, 11)elif current_page_num + 5 > num_pages:page_range = range(num_pages - 10, num_pages + 1)else:page_range = range(current_page_num - 5, current_page_num + 6)else:page_range = paginator.page_range# 获取浏览器发来的关于页码的信息。 默认显示第一页. int(float())转换一下。防止用户搞个小数过来try:# 如何取到 某一页的数据current_page = paginator.page(current_page_num) # 第一页的数据,返回一个可迭代页数的对象# for i in page: # 遍历第一页的所有数据# print(i)# print(current_page.object_list) # 获取当前页所有的数据 返回QuerySet对象。包含了当前页的所有book对象except EmptyPage as e: # 捕获用户输入的数字超出或者太小时,默认返回首页current_page = paginator.page(1)return render(request, "ajaxdemo/book_list.html", locals())
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta http-equiv="x-ua-compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/static/bootstrap/css/bootstrap.css"><script type="text/javascript" src="/static/jquery-3.3.1.js"></script><title>Title</title><style>{#.pagination > li{display: none}#}.pagination > li show {display: inline}</style> </head> <body> <ul>{% for book in current_page %}<li>{{ forloop.counter }},{{ book.title }},{{ book.price }}</li>{% endfor %} </ul> <nav aria-label="Page navigation"><ul class="pagination"> {% if current_page.has_previous %}<li><a href="?page={{ current_page.previous_page_number }}" aria-label="Previous"><span aria-hidden="true">上一页</span></a></li> {% else %}<li class="disabled"><a href="" aria-label="Previous"><span aria-hidden="true">上一页</span></a></li> {% endif %}{% for page_num in page_range %}{% if current_page_num == page_num %}<li class="active"><a href="?page={{ page_num }}">{{ page_num }}</a></li>{% else %}<li><a href="?page={{ page_num }}">{{ page_num }}</a></li>{% endif %} {% endfor %}{% if current_page.has_next %}<li><a href="?page={{ current_page.next_page_number }}" aria-label="Next"><span aria-hidden="true">下一页</span></a></li> {% else %}<li class="disabled"><a href="" aria-label="Next"><span aria-hidden="true">下一页</span></a></li> {% endif %}</ul> </nav> </body> </html>
前端,代码
转载于:https://www.cnblogs.com/chengege/p/10705447.html
django分页的东西, 不详细, 但是也足够了。相关推荐
- 2019.03.20 mvt,Django分页
MVT模式 MVT各部分的功能: M全拼为Model,与MVC中的M功能相同,负责和数据库交互,进行数据处理. V全拼为View,与MVC中的C功能相同,接收请求,进行业务处理,返回响应. T全拼为T ...
- 第八篇Django分页
Django分页 1.复杂版 data = []for i in range(1, 302):tmp = {"id": i, "name": "ale ...
- Django 分页查询并返回jsons数据,中文乱码解决方法
Django 分页查询并返回jsons数据,中文乱码解决方法 参考文章: (1)Django 分页查询并返回jsons数据,中文乱码解决方法 (2)https://www.cnblogs.com/jo ...
- Thinkphp5之ajax分页实现_paginate()参数详细
Thinkphp5 做数据搜索需要带关键词分页,如何将查询条件带入到分页中,本文详细介绍Thinkphp5 分页带参数 一.基本使用方法: $list = Db::name('user')->w ...
- django ajax 查询,Django分页和Ajax查询
在Django中,实现分页以在多个页面上显示查询项目是非常简单的.使用Ajax仅更新实际发生更改的页面位,而不是每次加载整个页面也是非常直接的.但是,当我们将两者结合在一起时,我发现它有点问题.Dja ...
- Django分页+增删改查
Django分页+增删改查 演示 源码下载地址:https://download.csdn.net/download/qq_35622606/87719248 其他小笔记: django-admin. ...
- django分页实现
Django分页 Django提供了一个类Paginator用于分页,但Paginator并不具体管理具体的页的处理,而是使用Page对象管理具体页面.下面我们以一个具体的例子来说明一下分页的实现 文 ...
- django分页查询
Django分页查询(整合vue) 一.django部分 在view.py里添加分页查询方法 from django.http import JsonResponse from django.view ...
- 17. django分页
分页 Django提供Paginator类来实现分页功能,它位于django.core.paginator 模块中 Paginator Paginator它负责分页数据整体的管理. 语法参数 对象的构 ...
最新文章
- 新概念英语(1-9)How is Ema?
- javaScript中的事件对象event是怎样
- jQuery的jquery-1.10.2.min.map触发404(未找到)
- 【数据结构】——快速排序
- python数据可视化字段_python数据爬取及数据可视化分析
- KMP模式匹配算法程序(Python,C++,C)
- [转载] 交互式数据可视化在Python中用Bokeh实现
- java/php/net/python高校教材管理系统设计
- docker之SonarQube集成阿里p3c规则
- emmagee 性能工具梳理
- Agile实践之Kanban工具: Wekan
- 徐思201771010132《面向对象程序设计(java)》第十六周学习总结
- veu3路由的安装和使用
- springboot @Value无效原因
- cocos2dx_lua读取unity手机游戏本地文件
- 端电压,相电压,线电压区别
- springboot项目多moudle打包到一个jar
- Python 智能项目:1~5
- 将微信小程序转换uniapp进行迁移的步骤以及遇到的问题总结
- 电脑屏幕旋转工具 躺着看才舒服。
热门文章
- 比尔盖茨:反垄断案让我分心,不然微软定能打败安卓
- mysql物理删除索引_Oracle与MySQL删除字段时对索引和约束的处理
- java 重复代码优化_利用注解 + 反射消除重复代码(Java项目)
- 将angular转化为手机app_手机照片快速转化为PBR材质流程
- Java垂直镜像,Java OpenCV实现图像镜像翻转效果
- c语言 除法小数点怎么写,高精度除法小数点位数
- 阿德莱德计算机科学怎么样,阿德莱德大学计算机科学硕士专业怎么样?成为IT大牛的不二之选...
- oracle存在于A不存在于B,Oracle试题
- html背景图片只显示一张图片,img只显示图片一部分 或 css设置背景图片只显示图片指定区域(示例代码)...
- oracle数据库实践,RubyonRails连接Oracle数据库实践