coder-packages / scope-filtering
Scope filtering in Laravel
dev-master
2019-03-10 14:42 UTC
This package is auto-updated.
Last update: 2025-05-19 05:51:26 UTC
README
Add trait into models
use Larapackages\ScopeFiltering\Traits\Filterable; class User { use Filterable; }
Create a Scope
namespace App\Filters; use Illuminate\Database\Eloquent\Builder; use Larapackages\ScopeFiltering\Scope; class ContainsScope extends Scope { protected $field; /** this is not required */ public function __construct(string $field) { $this->field = $field; } public function filter(Builder $query, $value) { return $query->where($this->field, 'ilike', "%". mb_strtolower($value) . "%"); } }
Use in searches
use App\Filters\ContainsScope; User::filterBy([ 'name' => ContainsScope // or 'name' => new ContainsScope('name') ])->get();