Laravel分页per_page / limit不会添加到nextPageUrl

Was*_*sim 2 laravel

使用Model::paginate($per_page)分页时,将返回包含per_page变量的分页。问题是,当您获得时,nextPageUrl()它仅提供?page=xurl变量,因此,如果您想per_page在url中指定,例如

https://example.com/api/users?page=1&per_page=100

不会将其添加LengthAwarePaginator到next / prev网址中。

是否有我缺少的东西,还是必须手动将其附加到URL?

Fab*_*nes 6

如果要将其添加到每个单独的url中,则在分页器中有一个方法可以让您添加查询字符串。

Laravel 5.4+:

//fetch the get parameter per_page, if doesn't exists defaults it to 100
$per_page = \Request::get('per_page') ?: 100;
$users = App\User::paginate($per_page);
$users->appends(['per_page' => $per_page])
return view('users', ['users' => $users]);
Run Code Online (Sandbox Code Playgroud)

旧解决方案5.3:

//fetch the get parameter per_page, if doesn't exists defaults it to 100
$per_page = \Request::get('per_page') ?: 100;
$users = User::paginate($per_page);
$users->addQuery('per_page', $per_page);
return view('users', ['users' => $users]);
Run Code Online (Sandbox Code Playgroud)