Laravel Pagination get Total返回null - 需要所有页面的总记录数

时间:2015-03-31 14:43:14

标签: laravel pagination

我使用laravel实现了简单的分页。它工作正常。但是,我想添加记录总数并尝试使用方法getTotal()但它返回null值。

$records = DB::table('tablename')
           ->where(condition)
           ....
           ....
           ->simplePaginate(10);

在视图中,添加链接可以正常工作。

 {{$records->links();}}

当我使用时,

{{$records->getTotal();}}

它返回null。

如果我使用,

{{$records->count();}}

它返回给定页面的记录数。

有什么见解吗?

2 个答案:

答案 0 :(得分:1)

分页对象中有方法total()。只需调用该对象即可。你会得到总数。

ex:$records->total();

答案 1 :(得分:0)

simplePaginate的工作原理。来自文档:

  

如果您只是展示"下一步"和"以前"在分页视图中,您可以选择使用simplePaginate方法执行更有效的查询。当您不需要在视图上显示确切的页码时,这对较大的数据集非常有用。

简单的方法很简单,因为它不需要进行额外的,低效的大型表count查询来获得总数。