| Package Data | |
|---|---|
| Maintainer Username: | bzarzuela |
| Maintainer Contact: | bryan@teleserv.ph (Bryan Zarzuela) |
| Package Create Date: | 2015-08-28 |
| Package Last Update: | 2017-07-16 |
| Language: | PHP |
| License: | MIT |
| Last Refreshed: | 2025-11-04 03:02:58 |
| Package Statistics | |
|---|---|
| Total Downloads: | 1,618 |
| Monthly Downloads: | 1 |
| Daily Downloads: | 0 |
| Total Stars: | 5 |
| Total Watchers: | 2 |
| Total Forks: | 0 |
| Total Open Issues: | 0 |
Utility Class for Laravel 5 to assist in easily filtering paginated results
composer require bzarzuela/modelfilter
Use in actions that show the list of models. In this example, it's the index action in the TicketsController.
public function index()
{
$model_filter = new ModelFilter('tickets');
$model_filter->setRules([
'id' => ['primary'],
'concern_types' => ['in', 'concern_type_id'],
'created_from' => ['from', 'created_at'],
'created_to' => ['to', 'created_at'],
]);
$tickets = $model_filter->filter(Ticket::query())->paginate(30);
$filters = $model_filter->getFormData();
return view('tickets.index', compact('tickets', 'filters'));
}
The $filters variable passed to the view allows for the form to render the previously specified filters.