Download the PHP package mayoz/eloquent-filterable without Composer
On this page you can find all versions of the php package mayoz/eloquent-filterable. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package eloquent-filterable
Eloquent Filterable
With this package, you can optimize query clauses calling before or after the filter. You can manage your queries from a single interface.
Installation
PHP 5.5.9+ or HHVM, and Composer are required.
To get the latest version of Eloquent Filterable, simply add the following line to the require block of your composer.json
file:
You'll then need to run composer install
or composer update
to download it and have the autoloader updated. Or use to shortcut installed through terminal:
Usage
- Create your query filters.
- Create your Eloquent models.
- Define
Filterable
trait and use the query filters in the Eloquent model.
Create Filters
All filters should be extend Mayoz\Filter\Filter
abstract class. Thus, can be used before
and after
methods in your filters.
The Before Method
The before
method responsible to position the head of the WHERE clause of the query. For example; we need published = 1
of query WHERE clause. However, this clause would like to work on before the other clauses.
The After Method
The after
method responsible to position the end of the WHERE clause of the query. For example, if need status = 'active'
of query WHERE clause. However, this clause would like to work on after the other clauses.
Create Model
Create your model file. If you want to manage queries add the Filterable
trait your model file. And than, assign the all associative filters to $filters
variable. Consider the following example:
Important: The order of the filter is important when adding (if need multiple before or after filters) query clause. The before filters are added the head of the clause according to the reference sequence. Likewise, the after filters.
Debug
Now the Post
model is ready to use. You ready? Okay, we're testing the query. Don't forget to enable the query logging for examine the model queries.
Query logging output:
Why Use?
For example, you might want to show only the approved text of the visitors on the site. However, administrators can see them all. Create a new extended filter:
Hocus, pocus! Visitors will display only the active posts. But administrator display all. Ok?
Contributing
Love innovation and simplicity. Please use issues all errors or suggestions reporting. Follow the steps for contributing:
- Fork the repo.
- Follow the Laravel Coding Style.
- If necessary, check your changes with unittest.
- Commit all changes.
- Push your commit and create a new PR.
- Wait for merge the PR.
Unit Test
Please create your tests and check before PR. Use the command:
License
Eloquent Filterable is licensed under The MIT License (MIT).