This package allows you to easily handle database filtering through query strings.
You can install the package via composer:
for Laravel 6.x & 7.x
composer require catalyzecomm/laravel-filterable
Introduction here
Define your model (use Catalyzecomm\Filterable
Trait and define $allowedFilters
)
use Catalyzecomm\Filterable;
...
/**
* Define an array of filter that allowed to use for this model
* `key` as class name and `value` as field name(s)
*
* @var array
*/
protected static $allowedFilters = [
Catalyzecomm\Filters\Sort::class => 'created_at',
Catalyzecomm\Filters\Keywords::class => 'name,email',
];
Use on your controller
$users = User::filterPaginate();
or
$users = User::filterAll();
The MIT License (MIT). Please see License File for more information.