这是我的路线:
Route::namespace('Admin')->prefix('admin')->name('admin.')->middleware(['auth', 'auth.admin'])->group(function () {
Route::prefix('users')->group(function() {
Route::get('/', 'UserController@index')->name('user');
在我的控制器中,我有以下内容:
$users = User::with('roles', 'group')->paginate(1);
return view('admin.user.index')->with(['users' => $users]);
没有分页,这可以正常工作并返回我得到的4个结果。通过分页,事情的UI部分起作用了,它在分页控件中向我显示了4个链接(每页1个结果),但是当单击第2、3和4页的链接时,每次都只会返回相同的第一项。
例如,我可以看到它正在“网络”标签中传递URL参数:
http://localhost:8050/admin/users?page=2
但是,它对返回的结果没有影响,所以我认为问题出在我的雄辩查询中吗?
经过更多研究,问题不在于分页,而在于GET参数。
即使我像这样直接在URL中直接传递页面密钥,也是如此:http://localhost:8050/admin/users?page=2我的GET参数为空,这就是为什么分页不起作用但是什么阻止GET参数通过的原因?
即使执行dd($ _ GET)也会显示GET参数为空。
答案 0 :(得分:1)
使用此:
$paginate = $request->input('page');
$itemsPerPage = 10;
if(!$paginate){
$paginate = 1;
}
$users = User::with('roles', 'group')->skip($paginate*$itemsPerPage)->take($itemsPerPage);
return view('admin.user.index')->with(['users' => $users]);
答案 1 :(得分:-1)
尝试此代码
在Controller用户中(更改表名)
$users = DB::table('users')->paginate(1);
return view('user.index', ['users' => $users]);
在视图中
{{ $users->links() }}
答案 2 :(得分:-1)
在查看文件中,您可以更改以下内容:
{!! users->links() !!}