【发布时间】:2015-09-30 23:02:01
【问题描述】:
假设我的数据库中有 200 条记录。在显示这些记录时,我想对它们进行分页。正常的方法是做类似
$tasks = Tasks::paginate(10);
然后
$tasks->links();
该代码运行良好。但是,使用该代码,您将在每次获取这 10 行时运行 DB 查询(200/10= 所有行的 20 次)。
我需要的是一次获取所有数据,将它们存储在一个集合中(比如$tasks),然后对resulting collection 进行分页,而不是再次从数据库中获取。
更重要的是,我需要查询诸如“仅获取 100 条记录并将它们分页 10”之类的内容,如果是这样的话,那就太好了
Tasks::take(100)->paginate(10)
但不幸的是,即使这样也行不通。
有人知道如何解决这些问题吗?
【问题讨论】:
标签: php laravel laravel-4 pagination eloquent