Laravel 5.1 指定当前页面进行分页
为此工作了太久,但没有结果.我试过了.
Been working on this for far too long with no results. I have tried.
`IlluminatePaginationPaginator::setCurrentPage($current_page);`
返回调用受保护的方法IlluminatePaginationPaginator::setCurrentPage()
Paginator::setCurrentPage($current_page);
返回调用受保护的方法IlluminatePaginationPaginator::setCurrentPage()
DB::getPaginator()->setCurrentPage($current_page);
返回 call_user_func_array() 期望参数 1 是一个有效的回调,类 'IlluminateDatabaseMySqlConnection' 没有方法 'getPaginator'
$tmp = new Post( );$tmp->getConnection()->setCurrentPage($current_page);
返回 call_user_func_array() 期望参数 1 是一个有效的回调,类 'IlluminateDatabaseMySqlConnection' 没有方法 'getPaginator'
如何指定页面?我需要手动指定.
How can I specify the page? I need to specify it manually.
我曾希望它像 $model->find()->paginate($per_page, $page)
推荐答案
假设你有 $users
在你的 UserController
中进行分页,你可能会这样做:
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 = AppUser::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.
相关文章