Wallogit.com
2017 © Pedro Peláez
Easy Pagination
Copy Pagination into your "app/Lib/" directory, (*1)
Add service provider "App\Lib\Pagination\PaginationServiceProvider", (*2)
use App\Lib\Pagination\Pagination;
class HomeController extends Controller {
private $pagination;
public function __construct(Pagination $pagination) {
$this->pagination = $pagination;
}
public function index(Request $request) {
// Eloquent 3 per/page
$products = Product::paginate(3);
// Pagination set($products, $baseUrl)
$paginator = $this->pagination->set($products, $request->getBaseUrl());
// Return view
return view('home')
->with(compact('products', 'paginator'));
}
<nav>
<ul class="pagination">
{!! $paginator->renderBootstrap('Prev', 'Next') !!}
</ul>
</nav>
or, (*3)
<nav>
<ul class="pagination">
@if($paginator->hasPrevPage)
<li>
<a href="{{ $paginator->prevPageUrl }}">Prev</a>
</li>
@endif
@if($paginator->lastPage > 1)
@foreach($paginator->currentPages() as $currentPage)
@if($paginator->currentPage == $currentPage->num)
<li class="active">@else<li>@endif
<a href="{{ $currentPage->url }}">{{ $currentPage->num }}</a>
</li>
@endforeach
@endif
@if($paginator->hasNextPage)
<li>
<a href="{{ $paginator->nextPageUrl }}">Next</a>
</li>
@endif
</ul>
</nav>