Looking to hire Laravel developers? Try LaraJobs

laravel-queryable maintained by stephenlake

Description
Laravel HTTP query parameter based model filtering and searching.
Author
Last update
2020/01/09 19:37 (dev-master)
License
Links
Downloads
964

Comments
comments powered by Disqus

Laravel Queryable

tests styleci scrutinzer downloads release license

Laravel Queryable is a light weight package containing simple injectable model traits with configurable attributes to perform powerful and flexible queries of your models dynamically from static HTTP routes.

Made with ❤️ by Stephen Lake

No Longer Maintained :exclamation:

This package is no longer maintained as a far more flexible package exists, it is highly recommended to use Spatie's Laravel Query Builder instead. If you would like to take over this package as maintainer, please get in touch with me.

Getting Started

Install the package via composer.

composer require stephenlake/laravel-queryable

Add the trait to your model:

use \Queryable\Traits\QueryParamFilterable;

Define filters on your model:

YourModel::withFilters(['name', 'content', 'created_at'])->get();

Then add dynamic queryables to your HTTP routes:

https://www.example.org?name=Awesome&content=*awesome*&created_at>=2018

This automatically adds the following to the query builder:

YourModel::where('name', 'Awesome')
         ->where('content', 'like', '%awesome%')
         ->where('created_at, '>=', '2018')

See documentation for the full list of available operators and further usage.

License

This library is licensed under the MIT License - see the LICENSE.md file for details.