laravel 5.2分页漂亮的网址

时间:2016-08-24 05:33:54

标签: laravel url pagination

我正在使用Laravel 5.2

有没有办法在Laravel 5.2中获得分页漂亮的URL?

http://localhost:8000/backend/admin_user?page=10&page=1

以及我想要获得的内容,如何生成Link Pretty Url:

http://localhost:8000/backend/admin_user/10/1

2 个答案:

答案 0 :(得分:1)

所以你可以试试这样的事情:

Route::get('test/{page}', function ($page) { return User::paginate(2, ['*'], 'page', $page); });

答案 1 :(得分:0)

您可以通过三个简单的步骤来实现这一目标。

注册路线:

请注意问号,这会使sizepage值可选;

Route::get('backend/admin_user/{size?}/{page?}', ['uses' => 'BackendController@adminUser']);

在您的控制器中实现此功能:

请注意默认值$size = 10, $page = 1。如果您导航到没有分页的网址,这可以确保您不会收到错误。

<?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() }}