Django 使用Paginator分页
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
subclass_s = models.subclass_details.objects.all() #查询数据获取一个列表
paginator = Paginator(subclass_s,2) #使用Paginator对列表进行分页,我每页行数设置是2
page = request.GET.get('page') #网页使用列如127.0.0.1:8000?page=1 获取请求的页数
try:
page = int(page) #我设置了用户在前端输入页码跳转,保证用户输入的是数字
except:
page = 1 #输入非数字跳转第一页
if page == None : # 没有输入跳转第一页
page = 1 try:
subclass_s = paginator.page(page) #这里是进行跳转的操作
except PageNotAnInteger:
subclass_s = paginator.page(1) #如果输入是错误的跳转第一页
except EmptyPage: #如果输入的超出页码数跳转最后一页
subclass_s = paginator.page(paginator.num_pages)
return render(request,'xproject/subclass_details.html',locals())
Paginator的一些操作方法
subclass_s = models.subclass.objects.all()
s = Paginator(subclass_s,10) s.count #总对象,即列表里面的对象总数 s.num_pages #总页码数 p.page(num) #获取第num页 p.page(num).object_list #获取第num页里面的数据并以列表的形式显示 p.page(num).has_next() #判断num页当前是否有下一页 p.page(num).hhas_previous() #判断num页当前是否有上一页 p.page(num).has_other_pages() #判断num页是否有其他页 p.page(num).next_page_number() #获取下一页的页码 p.page(num).previous_page_number() #获取上一页的页码 p.page(num).start_index() #num页内从一开始数第一个对象 p.page(num).end_index() #num页内从一开始数最后一个对象
Django 使用Paginator分页的更多相关文章
- Django 之 Paginator 分页功能
Django Paginator Django 分页官方文档 https://docs.djangoproject.com/en/1.10/topics/pagination/ 此分页方法没有限制显 ...
- Django——Paginator分页功能练习
1.路由urls.py from django.contrib import admin from django.urls import path from app01.views import in ...
- Django 在 view 中使用 Paginator分页插件
1.在 view 中使用 Paginator def query(request,sql): # 创建连接 connection = pymysql.connect(**config) try: wi ...
- 7.django之自定义分页记录
只是大概记录下步骤: 1.表结构: class UserProfile(models.Model): ''' 用户表 ''' user = models.OneToOneField(User,verb ...
- django之快速分页
本文介绍djanog两种分页,第一是普通分页,第二是使用haystack全文检索的分页. 1.django自带分页功能,这个功能非常好用.基本知识点:Django提供了数据分页的类,这些类被定义在dj ...
- Django内置分页
一.django内置分页 from django.shortcuts import render from django.core.paginator import Paginator, EmptyP ...
- Django ListView实现分页
效果: url.py main-urls from django.urls import path,include urlpatterns = [ path('admin/', admin.site. ...
- Django之自定义分页
分页功能在每个网站都是必要的,对于分页来说,其实就是根据用户的输入计算出应该显示在页面上的数据在数据库表中的起始位置. 1. 每页显示的数据条数 2. 每页显示页号链接数 3. 上一页和下一页 4. ...
- Django中的分页,cookies与session
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...
随机推荐
- python并发编程之多线程理论部分
阅读目录 一 什么是线程 二 线程的创建开销小 三 线程与进程的区别 四 为何要用多线程 五 多线程的应用举例 六 经典的线程模型(了解) 七 POSIX线程(了解) 八 在用户空间实现的线程(了解) ...
- html5--4-5 embed元素及其他
html5--4-5 embed元素及其他 学习要点 掌握embed元素的使用 了解object元素的使用 温馨提示:关于video和audio的事件方法等涉及都JavaScript知识的内容,暂时不 ...
- python berkeley 操作——尤其提示 需版本匹配
python berkeley 操作 先到http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/dow ...
- IDEA 设置背景颜色及字号
intellij IDEA 设置背景颜色 File--> Settings 2. Appearance & Behavior --> Appearance 设置边框背景颜色 3 ...
- gulp --- 前端自动化构建工具
目录 1. gulp使用步骤 1.1 安装Node.js 1.2 全局安装gulp 1.3 安装项目依赖包gulp 1.3.1 了解package.json 1.3.2 根据package.json安 ...
- bzoj 3481 DZY Loves Math III——反演+rho分解质因数
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3481 推推式子发现:令Q=gcd(P,Q),ans=Σ(d|Q) d*phi(P/d).把 ...
- ComboBox的真实值和显示值
一.类型 /// <summary> /// 下拉框值类型 /// </summary> public class TextAndValue { /// <summary ...
- Deques and Randomized Queues
1. 题目重述 完成三个程序,分别是双向队列,随机队列,和随机队列读取文本并输出k个数. 2. 分析 2.1 双向队列 题目的性能要求是,操作时间O(1),内存占用最大48n+192byte. 当使用 ...
- Codeforces1111D Destroy the Colony 退背包+组合数
Codeforces1111D 退背包+组合数 D. Destroy the Colony Description: There is a colony of villains with severa ...
- Using MultiPath TCP to enhance home networks
Over the last few months I’ve been playing with MultiPath TCP and in this post I will show how I use ...