Django实现简单分页功能
使用django的第三方模块django-pure-pagination
安装模块:
pip install django-pure-pagination
将'pure_pagination'添加到settings.py文件中
INSTALLED_APPS = (
...
'pure_pagination',
)
在view.py文件中
from django.shortcuts import render
rom .models import mymodel from pure_pagination import Paginator, EmptyPage, PageNotAnInteger def NewsList(request):
all_news = mymodel.objects.all().order_by('-add_time') # 分页功能
try:
page = request.GET.get('page', 1)
except PageNotAnInteger:
page = 1 p = Paginator(all_news, 3, request=request) news = p.page(page)
return render(request, 'rdxw.html', {'all_news': news})
在template.py文件中调用view传递的参数'all_news'需要加上'.object_list'
{% extends 'base.html' %}
{% block content %}
<ul>
{% for new in all_news.object_list %}
<li>{{new.content}}</li>
{% endblock %}
</ul>
实现翻页的部分:
<div class="pageturn">
<ul class="pagelist">
{% if all_news.has_previous %}
<li class="long"><a href="?{{ all_news.previous_page_number.querystring }}">上一页</a></li>
{% endif %} {% for page in all_news.pages %}
{% if page %}
{% ifequal page all_news.number %}
<li class="active"><a href="?{{ page.querystring }}">{{ page }}</a></li>
{% else %}
<li><a href="?{{ page.querystring }}" class="page">{{ page }}</a></li>
{% endifequal %}
{% else %}
<li class="none"><a href="">...</a></li>
{% endif %}
{% endfor %}
{% if all_news.has_next %}
<li class="long"><a href="?{{ all_news.next_page_number.querystring }}">下一页</a></li>
{% endif %} </ul>
</div>
样式较文档提供的简化了很多,方便使用。
.pageturn .pagelist {
display: table-cell;
vertical-align: middle;
overflow: hidden;
}
.pageturn li {
width: 30px;
height: 30px;
line-height: 30px;
margin-left: 10px;
float: left;
text-align: center;
}
.pageturn li:first-child {
margin-left:;
}
.pageturn li:hover a, .pageturn .active a {
background: #717171;
color: #fff;
border-color: #eaeaea;
}
.pageturn a {
border: 1px solid #eaeaea;
display: block;
height: 28px;
color: #6c6c6c;
}
.pageturn .long {
width: 100px;
}
.pageturn .none a {
border:;
}
.pageright {
float: right;
width: auto;
display: inline;
clear: none;
margin-top: 10px;
}
参考:https://github.com/jamespacileo/django-pure-pagination
http://coding.imooc.com/learn/list/78.html
Django实现简单分页功能的更多相关文章
- DataGridView使用BindingNavigator实现简单分页功能
接上一篇<DataGridView使用自定义控件实现简单分页功能>,本篇使用BindingNavigator来实现简单分页功能.其实也只是借用了一个BindingNavigator空壳, ...
- Python Django 实现简单注册功能
Python Django 实现简单注册功能 项目创建略,可参考前期文档介绍. 目录结构如下 编辑views.py from django.shortcuts import render # Crea ...
- jQuery实现的简单分页功能的详细解析
分页功能在项目开发中不可或缺,老司机操作起来就和呼吸一样简单,新手恐怕就会吃力一些. 今天我回顾了一下具体的操作步骤,决定详细的分析一下每一步的实现目的及原理. 我们会创建一个简单的json文件来模拟 ...
- Django自定制分页功能
URL: """django_paginner URL Configuration The `urlpatterns` list routes URLs to views ...
- 利用rest-framework实现django应用的分页功能
自定义分页的类,继承 PageNumberPagination class StandardResultsSetPagination(PageNumberPagination): page_size ...
- Django 之 Paginator 分页功能
Django Paginator Django 分页官方文档 https://docs.djangoproject.com/en/1.10/topics/pagination/ 此分页方法没有限制显 ...
- 【原】django实现列表分页功能
在view.py里添加分页查询方法: from django.http import JsonResponse from django.views.decorators.http import req ...
- Django,ajax实现表格增删查改,Django内置分页功能。
1.工程目录 2.urls.py """Django_ajax URL Configuration The `urlpatterns` list routes URLs ...
- django网页的分页功能,大家如果有疑问请留言
url文件 from django.contrib import admin from django.conf.urls import url from app01 import views urlp ...
随机推荐
- 第二次作业——个人项目实战(Sudoku)
Github:Sudoku 项目相关要求 利用程序随机构造出N个已解答的数独棋盘 . 输入 数独棋盘题目个数N 输出 随机生成N个 不重复 的 已解答完毕的 数独棋盘,并输出到sudoku.txt中, ...
- 201521123117 《Java程序设计》第5周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点 2. 书面作业 Q1代码阅读:Child压缩包内源代码 1.com.parent包中Child.java文件能否编译通过?哪句会 ...
- 201521123033《Java程序设计》第1周学习总结
1. 本周学习总结 (1)了解了JVM,JRE,JDK (2)配置java环境变量 (3)编译一些简单的java代码 2. 书面作业 为什么java程序可以跨平台运行?执行java程序的步骤是什么?( ...
- 201521123062《Java程序设计》第11周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) 1.1 除了使用synch ...
- 【干货篇】步步为营,带你轻松掌握jQuery!
写在前面:经过系统的学习了原生JS之后,会发现其具有以下三个特点: 1.是一种解释性脚本语言(代码不进行预编译). 2.主要用来向 HTML 页面添加交互行为. 3.可以直接嵌入 HTML 页面,但写 ...
- java程序与编译
Java 源文件(.java) 使用 Java编译器(javac.exe)编译 生成 java字节码文件(.class) 使用 解释执行器(java.exe) 将字节码文件加载到java虚拟机(j ...
- ul中li居中显示的table方法
废话不多,贴代码 <ul> <li>1</li> <li>2</li> <li>3</li> <li>4 ...
- 【java】聊聊java里的接口
接口的概念 java中的接口用于描述类应该具备什么样的功能,而不给出具体的实现,一个类可以“实现”多个接口 [注意]接口不是类,而是对类的一组描述 还是让我们通过一个例子来看看接口如何运作吧! ...
- 微信小程序购物车产品计价
微信小程序购物车产品计价: 问题:当选中商品,价格累加时会出现无限循环小数 解答:在计算前先parseFloat(变量),再计算的最后使用(变量).toFixed(2)保留两位小数 例如: jiaCa ...
- 在centos6,7 上编译安装内核
小编以前写过一篇软件的源码编译安装,今天小编再给大家带来一篇内核的编译安装. 今天,就以centos7 编译安装最新版本4.13.2 内核为例,给大家详解.编译安装之前,检查一下自己的磁盘空间 ...