wicool / laravel-filters
A Laravel package to make it easy to consult eloquente
Installs: 7
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:package
Requires
- php: >=7.3.0
This package is auto-updated.
Last update: 2025-02-21 02:13:32 UTC
README
- Install:
composer require wicool/laravel-filters
How to use:
- Model
app/Models/User.php
<?php namespace App\Models\User; use Illuminate\Database\Eloquent\Model; use Wicool\LaraFilter\LaraFilterTrait; class User extends Model { use LaraFilterTrait; /** * set string fields for filtering * @var array */ protected $likeFilterFields = ['name', 'email', 'phone']; /** * set boolean fields for filtering * @var array */ protected $boolFilterFields = ['status']; }
- Controller
app/Http/Controllers/UserController.php
You only need to pass the parameters via request in the controller scope filter.
<?php namespace App\Http\Controllers; use App\Http\Controllers\Controller; use App\Models\User; use Illuminate\Http\Request; class UsersController extends Controller { public function index(Request $request) { $users = User->filter($request->all())->get(); return $users; } }
- The return will be something like:
/users?name=Fulaninho&email=fulaninho@email.com?phone=999999999&status=true
SELECT * FROM users WHERE name = 'Fulaninho' AND email = 'fulaninho@email.com' AND status = true