提问者:小点点

laravel 5.2分页


我使用的是Laravel 5.2

有没有办法在Laravel5.2中获得一个分页漂亮的URL?

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

我想得到的是,如何生成链接漂亮的Url:

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


共2个答案

匿名用户

所以你可以试试这样的东西:

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