我有laravel查询,最后返回我的结果和paginate(),问题是我预先收集数据中的所有ID我只获得第一页。
有没有办法在分页符之前获取这些,所以我不必运行查询两次?
$clients = Client::apply($data, $dataArray)->ModelJoinCall()->orderBy($this->sortby, $this->orderby)->paginate(30);
答案 0 :(得分:0)
没有办法做到这一点,因为paginate使用Sql限制来检索数据,让我们假设你在第一页,你将从数据库中检索前30条记录,如果你在第二页,然后你从数据库中获得30到60条记录。
使用另一个sql获取所有ID没有麻烦。
或者如果您的数据库没有太多数据。你可以在一个页面中检索它们并使用javascript和html制作分页效果