为什么分页laravel忽略请求 - 跳过,采取
问题描述:
我想使用skip
和take
但分页不起作用。为什么它不起作用?为什么分页laravel忽略请求 - 跳过,采取
代码:
$posts = DB::table('posts')
->orderBy('id','desc')
->skip(9)
->take(3)
->paginate(3);
if ($request->ajax()) {
return ['posts' => view('blog.ajax.index')->with(compact('posts'))->render(),
'next_page' => $posts->nextPageUrl()
];
}
我一定要使用分页
答
不能使用PAGINATE并跳过在同一时间。所以您的替代选择将是这样的
$take = 100;
$skip = 9;
$currentPage = Request::get('page', 1);
$poster = DB::table('posts')
->take(100)
->skip($skip + (($currentPage - 1) * $take))
->orderBy('id','desc');
为分页尝试
@if (Request::has('page') && Request::get('page') > 1)
<a href="{{ route('some.route', ['page' => Request::get('page') - 1]) }}">Previous page</a>
@endif
@if (Request::has('page'))
<a href="{{ route('some.route', ['page' => Request::get('page') + 1]) }}">Next page</a>
@else
<a href="{{ route('some.route', ['page' =>2]) }}">Next page</a>
@endif
我一定要使用分页 –
@ArmanTurebekov您可以使用分页,也是我提到在回答分页部分。并在将数据发送到视图之前计算页数,这仅仅是根据您的要求进行示例修改。 –
非常感谢你 –