1 2 3 4 5 6 7 8 9 10 | $sql = "SELECT projects.`id`, projects.`title`, projects.`description` FROM projects WHERE projects.`id` IN (?) GROUP BY projects.`id` ORDER BY projects.`id` ASC"; // results correctly in 3 rows, if I replace the ? directly with the string, so using NO BINDINGS $query = DB::select(DB::raw($sql)); |
不用ORM的写法但又想使用Pagination的自动分页便利功能,只好自己来了。
首先在Repository中先宣告
1 2 | use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\Paginator; |
然后再自己把Paginator建起来
1 2 3 4 5 6 | $query = DB::select( DB::raw($sql) ); $page = Paginator::resolveCurrentPage("page"); $perPage = $count; //實際每頁筆數 $offset = ($page * $perPage) - $perPage; $data = new LengthAwarePaginator(array_slice($query, $offset, $perPage, true), count($query), $perPage, $page, ['path' => Paginator::resolveCurrentPath()]); |
$page 就是整个查询出来的data
1585 全部 1 今日
您好,
我想请教原本URL上带有参数「?test1=123&test2=456&testkey=789&page=1」
但要切换到第2页时,原本URL带的参数都没了,回归为「?page=2」
想请教版主如何在切换到下一页时,保留原URL的参数,相当感谢。
您好,
不好意思,在您这请教后豁然开朗的找到解决办法了!
依然相当感谢版主这篇文章的分享!