专栏首页緣來來來Django添加分页功能

Django添加分页功能

最近学stm32单片机数据传输,Web端监控数据,由于数据比较多,查看不是很方便,因此需要安装一个分页插件来实现!

Django自带了一个 paginator ,使用起来不是很方便,所以可以使用 第三方的分页插件django-pure-pagination

下面就来介绍此插件的使用:

安装

有两种方式安装,一种是直接通过 pip 安装,另外一种就是通过源码来安装了~~

  • pip 安装 pip install django-pure-pagination
  • 源码安装 git clone https://github.com/jamespacileo/django-pure-pagination.git cd django-pure-pagination python setup.py install

配置

在setting.py中设置:

INSTALLED_APPS = (
    ...
    'pure_pagination',
)

PAGINATION_SETTINGS = {
    'PAGE_RANGE_DISPLAYED': 10,
    'MARGIN_PAGES_DISPLAYED': 2,

    'SHOW_FIRST_PAGE_WHEN_INVALID': True,

视图

from pure_pagination import Paginator, PageNotAnInteger

    ···

def data_history(request):
    datas=Data.objects.all()
    try:
        page = request.GET.get('page', 1)
    except PageNotAnInteger:
        page = 1
    p = Paginator(datas, 8, request=request)
    data=p.page(page)
    return render(request,"index.html",{"data":data})

    ···

其中 datas 为从数据库中得到内容,data 为需要传到html中的内容。

前端

在for循环时,需要在data后多加个object_list用来一页一页的显示

<div class="row" >
  <div class="col-md-12" style="border-left:red 2px solid;">
    <table class="table table-striped">
     <caption>空气状况</caption>
     <thead>
       <tr>
          <th>温度</th>
         <th>湿度</th>
         <th>PH值</th>
          <th>经度</th>
         <th>纬度</th>
         <th>时间</th>
       </tr>
       </thead>
      <tbody>
     {% for  dataone in data.object_list %}
        <tr>
          <td>{{ dataone.temp }}</td>
         <td>{{ dataone.humi }}</td>
         <td>{{ dataone.ph }}</td>
         <td>{{ dataone.jingdu }}</td>
         <td>{{ dataone.weidu }}</td>
          <td>{{ dataone.time }}</td>
       </tr>
     {% endfor %}
      </tbody>
    </table>
  </div>
</div>


{# The following renders the pagination html #}
<div id="pagination" style="margin-top:-40px;">
    {{ data.render }}
</div>

最终效果如图:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Mac免费NTFS支持10.13,解决文件变灰(附加属性)、过期、Finder侧边栏等问题

    緣來
  • Python爬虫 --- 2.3 Scrapy 框架的简单使用

    网络爬虫,是在网上进行数据抓取的程序,使用它能够抓取特定网页的HTML数据。虽然我们利用一些库开发一个爬虫程序,但是使用框架可以大大提高效率,缩短开发时间。Sc...

    緣來
  • Python爬虫--- 1.2 BS4库的安装与使用

    緣來
  • 自动化工具之Appium之报告自定义

    上面报告虽然麻雀虽小但五脏俱全,但是如果用这个发送报告不是很美观,如果错误没有截图与日志,通过观察testng有需要可以继承的监听,可以自定义报告;

    高楼Zee
  • springboot学习笔记-thymeleaf

    简单说, Thymeleaf 是一个跟 Velocity、FreeMarker 类似的模板引擎,它可以完全替代 JSP 。相较与其他的模板引擎,它有如下三个极吸...

    Janti
  • 通过Knockout.js + ASP.NET Web API构建一个简单的CRUD应用

    较之面向最终消费者的网站,企业级Web应用对用户体验的要求要低一些。不过客户对“用户体验”的要求是“与日俱增”的,很多被“惯坏了”的用户已经不能忍受Postba...

    蒋金楠
  • Markdown 快速生成表格

    这个可以说是大杀器了,我们只需要下载一个东西就行了,这个是知乎用户幻灰龙写的东西,亲测有效

    IT小马哥
  • 快速学习-Thymeleaf快速入门

    以前大家用的比较多的是Freemarker,但是我们今天的主角是Thymeleaf!

    cwl_java
  • Springboot用官方建议访问Html页面并接传值

    我们以前通常习惯用webapp来放置jsp页面,但是到了Springboot中,官方建议用Static文件夹来存放及静态的资源,

    Dream城堡
  • Bootstrap响应式前端框架笔记三——代码与表格

        在技术博客文章类页面的开发中,常常需要在文本总插入说明代码,使用code便签可以创建这种效果,示例如下:

    珲少

扫码关注云+社区

领取腾讯云代金券