Download the PHP package musta20/laravel-records-filter without Composer
On this page you can find all versions of the php package musta20/laravel-records-filter. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download musta20/laravel-records-filter
More information about musta20/laravel-records-filter
Files in musta20/laravel-records-filter
Package laravel-records-filter
Short Description a laravel packge to filter record
License MIT
Informations about the package laravel-records-filter
Laravel Records Filter
Laravel record filter provides an easy and intuitive way to filter and sort records in your Laravel applications. It mimics the familiar syntax of the Laravel Paginator, making it simple to implement complex filtering logic.
Requerment
This package requires your app to include tailwind and alpinejs in your views
Installation
You can install the package via composer:
make sure to rebuild tailwind assets if you are not running vite dev
Using the package
In your model use the trait HasFilter:
implement the following function in your model according to your need
Sorting
The following example show how to implement sorting
Filter by relation
You can filter record based on relation to other table:
Search
You can search in records by defining the table name in search function:
Filtering
You can define filtering term like the following :
querying
you must use the function Filter() to retrieve the data keep in mind you have to call it the last in the query and do not call the paginate as it automatically paginated
Finally, run in your view call the filter nav using the function.
You can use different view like nav-filter to show all filtering option in linear view
You can also display filtering option in sidebar view by using the following function
for the side bar :
for the nav :
now of curse the view will not always match your style so you can publish the view and edit it the way you want
License
The MIT License (MIT). Please see License File for more information.