在前面的Index方法中,我们使用 Article.findAll() 方法,一次把全部数据都取出来,呈现在页面列表上。
在数据量很小的时候,比如几十条,这样做没有问题;如果数据几万条、几百万条呢?我们做的是web开发,无论是企业型开发,还是面向互联网的开发,数据突破几千、几万那是非常常见的事情。
所以我们需要分页,每次只显示几十条即可。
wojilu ORM 内置了分页查询方法,我们将原来的 Article.findAll() 方法注释掉,换成分页查询:
注意:findPage() 方法返回一个DataPage<>对象,它有两个属性经常用到
1、属性 Results:表示数据列表
2、属性 PageBar:是ORM自动生成的一段html代码。
当然它还有更多属性,比如 RecordCount/PageCount/Current 等,如果您对ORM自动生成的pagebar不满意,可以使用这些高级属性自定义。
当然,我们要将pagebar绑定到视图文件中:
注意到最后一行html代码吗?<div>#{page}</div>就是用于绑定list.PageBar的。
我们现在看下效果:
如果数据很多的话,这个分页pagebar的效果如下: