我使用的是Laravel 5.2
有没有办法在Laravel5.2中获得一个分页漂亮的URL?
http://localhost:8000/backend/admin_user?page=10
我想得到的是,如何生成链接漂亮的Url:
http://localhost:8000/backend/admin_user/10/1
所以你可以试试这样的东西:
Route::get('test/{page}',函数($page){返回用户::分页(2, ['*'], 'page',$page); });
您可以通过三个简单的步骤来实现这一点。
登记路线:
注意问号,这使得大小
和页面
值可选;
Route::get('backend/admin_user/{size?}/{page?}', ['uses' => 'BackendController@adminUser']);
在控制器中实现此功能:
请注意默认值,$size=10,$page=1
。这样可以确保在没有分页的情况下导航到url时不会出现错误。
<?php namespace App\Http\Controllers;
use App\Models\AdminUser;
use Illuminate\Pagination\LengthAwarePaginator;
class BackendController
{
public function adminUser($size = 10, $page = 1)
{
$collection = AdminUser::all();
$users = new LengthAwarePaginator($collection, $collection->count(), $size);
$users->resolveCurrentPage($page);
return view(backend.admin_user);
}
}
在您的视图中这样使用:
<div class="container">
@foreach ($users as $user)
{{ $user->name }}
@endforeach
</div>
{{ $users->links() }}