Looking to hire Laravel developers? Try LaraJobs

laravel-filters-sort maintained by dsoloview

Description
Laravel filters and sort
Last update
2023/07/14 17:25 (dev-master)
License
Links
Downloads
14
Tags

Comments
comments powered by Disqus

Laravel easy filters and sort

A small package that will allow you to easily and configurably filter and sort your query

Features

  • Customize sorting and filtering for each parameter
  • Easy to set default options
  • Structures the code
  • Easily expandable

Installation

Install dsoloview/laravel-filters-sort from composer

  composer require dsoloview/laravel-filters-sort

Usage

Model

For the model, you need to add traits HasFilters and HasSort Model

Filter

Create filter class for your model and extends it from dsoloview\LaravelFiltersSort\Filters\QueryFilter

Сreate a method for each parameter you will receive from the filter request

For example:

applicaitons?filters[categories][]=7&filters[search]=myApp

Filter

Sort

Create sort class for your model and extends it from dsoloview\LaravelFiltersSort\Sort\QuerySort

Сreate a method for each parameter you will receive from the sort request

For example:

applicaitons?sort=id&direction=asc

Sort

You can set default param for sort

protected const SORT_DEFAULT = 'param'

And for direction

protected const DIRECTION_DEFAULT = 'asc|desc'

Usage

Traits add scopes filter(QueryFilter) and sort(QuerySort) to your model

Usage

You can pass your filter and sort classes to scopes like in the screenshot.

After it you can make get() or paginate() like in example.

Support

For support, telegram @dsoloview.