2016-08-24 2 views

Répondre

0

Vous pouvez essayer quelque chose comme ça:

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

+0

Comment générer des liens Pagination url = backend/admin_user/10/1 –

+0

Vous ne pouvez pas mettre deux paramètres nommés page. Si vous avez deux pagination vous devez mettre deux params avec des noms différents: Route :: get ('test/{page}/{page1}', fonction ($ page, $ page1) { $ users = Utilisateur :: paginate (2, ['*'], 'page', $ page); $ posts = Post :: paginate (2, ['*'], 'page1', $ page1); }); – Vuer

+0

@Vuer - Où j'ai besoin d'écrire le code suivant: Route :: get ('test/{page}', fonction ($ page) { return Utilisateur :: paginate (2, ['*'], 'page ', $ page); }); –

0

Vous peut y parvenir en trois étapes simples.

Inscrivez-vous la route:

Notez le point d'interrogation, ce qui rend les valeurs size et page en option;

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

Mettre en oeuvre cette fonction dans votre contrôleur:

Notez les valeurs par défaut, $size = 10, $page = 1. Cela garantit que vous n'obtenez pas d'erreur si vous accédez à l'URL sans la pagination.

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

utilisation dans votre vue comme ceci:

<div class="container"> 
    @foreach ($users as $user) 
     {{ $user->name }} 
    @endforeach 
</div> 

{{ $users->links() }}