Laravel 8 Pagination Example Tutorial


Are you looking for an example of laravel 8 pagination example? laravel 8 pagination with Product table then I will give a simple example with a solution laravel pagination. I explained step by step laravel 8 pagination tutorial. let’s discuss pagination in laravel 8.

you & I know pagination is a primary requirement of laravel pagination example project. so if you are a beginner laravel Developer than you must know how to use pagination in laravel 8 and what is another function that can use with laravel 8 pagination.

In this example, I will explain to you from scratch how to create laravel pagination. so let's follow bellow code step by step creating a simple example of pagination with laravel 8.

[Pagination- Laravel 8] Web Artisans (CLI) Step By Step Example
Step 1: Add Route

The first thing is we put one route in one for list users with pagination. So simply add routes in your route file.

Pagination in Django
Pagination in Django
routes/web.php
<?php
  
use Illuminate\Support\Facades\Route;
  
use App\Http\Controllers\UserController;
  
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
  
Route::get('users', [UserController::class, 'index']);
Step 2: Create Controller

Here we will add one new method for route. index() will return users with pagination data, so let's add bellow:

app/Http/Controllers/UserController.php
<?php
  
namespace App\Http\Controllers;
  
use Illuminate\Http\Request;
use App\Models\User;
  
class UserController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $data = User::paginate(5);
        return view('users',compact('data'));
    }
}
Step 3: Create Blade File

In this step, you need to create users blade file and put bellow code with links() so it will generate pagination automatically.

resources/views/users.blade.php
<!DOCTYPE html>
<html>
<head>
    <title>Laravel 8 CRUD Application - phpcodingstuff.com</title>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha/css/bootstrap.css" rel="stylesheet">
</head>
<body>
    
<div class="container">
    <h1>Laravel 8 Pagination Example - phpcodingstuff.com</h1>
    <table class="table table-bordered">
        <thead>
            <tr>
                <th>Name</th>
                <th width="300px;">Action</th>
            </tr>
        </thead>
        <tbody>
            @if(!empty($data) && $data->count())
                @foreach($data as $key => $value)
                    <tr>
                        <td>{{ $value->name }}</td>
                        <td>
                            <button class="btn btn-danger">Delete</button>
                        </td>
                    </tr>
                @endforeach
            @else
                <tr>
                    <td colspan="10">There are no data.</td>
                </tr>
            @endif
        </tbody>
    </table>
         
    {!! $data->links() !!}
</div>
     
</body>
</html>

Now you can run and check this example. it is a very simple and basic example.

If you are using bootstrap then you have to add useBootstrap() on service provider as like bellow:

app\Providers\AppServiceProvider.php

<?php
  
namespace App\Providers;
  
use Illuminate\Support\ServiceProvider;
use Illuminate\Pagination\Paginator;
  
class AppServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
    
    }
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        Paginator::useBootstrap();
    }
}

If you need advance used of pagination then you can see bellow how to use.

Pagination with appends parameter

{!! $data->appends(['sort' => 'votes'])->links() !!}

Pagination with appends request all parameters

{!! $data->appends(Request::all())->links() !!}

You can also see in advance details from here: Laravel 8 Pagination.


I hope it can help you...

Leave a Reply

Your privacy will not be published. Required fields are marked *

We'll share your Website Only Trusted.!!

close