Laravel 5.1指定当前页面以进行分页 [英] Laravel 5.1 specifing current page for pagination
问题描述
从事这项工作太久了,没有结果.我已经尝试过了.
Been working on this for far too long with no results. I have tried.
`\Illuminate\Pagination\Paginator::setCurrentPage($current_page);`
返回
Call to protected method Illuminate\Pagination\Paginator::setCurrentPage()
\Paginator::setCurrentPage($current_page);
返回Call to protected method Illuminate\Pagination\Paginator::setCurrentPage()
\DB::getPaginator()->setCurrentPage($current_page);
返回call_user_func_array() expects parameter 1 to be a valid callback, class 'Illuminate\Database\MySqlConnection' does not have a method 'getPaginator'
$tmp = new Post( ); $tmp->getConnection()->setCurrentPage($current_page);
返回call_user_func_array() expects parameter 1 to be a valid callback, class 'Illuminate\Database\MySqlConnection' does not have a method 'getPaginator'
如何指定页面?我需要手动指定它.
How can I specify the page? I need to specify it manually.
我希望它像$model->find( )->paginate($per_page, $page)
推荐答案
假设您在UserController
中有$users
要分页,您可以这样做:
Suppose you have $users
to paginate in your UserController
, you might do:
public function index()
{
$currentPage = 3; // You can set this to any page you want to paginate to
// Make sure that you call the static method currentPageResolver()
// before querying users
Paginator::currentPageResolver(function () use ($currentPage) {
return $currentPage;
});
$users = \App\User::paginate(5);
return view('user.index', compact('users'));
}
我认为这适用于Laravel 5.0及更高版本.必须检查一下.
I believe this applies to Laravel 5.0 and above. Have to check on that.
这篇关于Laravel 5.1指定当前页面以进行分页的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!