Package to support pagination in union queries in Laravel Eloquent.
krossroad/laravel-union-paginator is a Laravel package for package to support pagination in union queries in laravel eloquent..
It currently has 19 GitHub stars and 110.461 downloads on Packagist (latest version v5.5.5).
Install it with composer require krossroad/laravel-union-paginator.
Discover more Laravel packages by krossroad
or browse all Laravel packages to compare alternatives.
Last updated
Laravel supports union pagination from v5.7
For Laravel v5.5 to v5.7
composer require 'krossroad/laravel-union-paginator:5.5'
For Laravel v5.2 to v5.4
composer require 'krossroad/laravel-union-paginator:5.4'
Just use
UnionPaginatorTraitin your model and you are good to go.
<?php
/**
* @filename {project}/App/Models/User.php
*/
namespace \App\Models\User;
use Krossroad\UnionPaginator\UnionPaginatorTrait;
class User extends Model
{
use UnionPaginatorTrait;
...
}
->unionPaginate()--> returns \Illuminate\Pagination\LengthAwarePaginator instance
$first = User::whereNull('first_name');
$pagination = User::whereNull('last_name')
->union($first)
->unionPaginate(
$perPage,
$columns,
$pageName = 'page',
$page
);
If you find any bug, issue or have queries. Please create a new issue