duc_cnzj / model-filter
Package description here.
v1.0
2020-06-16 13:05 UTC
Requires
- laravel/framework: ^5.5|^6.0|^7.0
Requires (Dev)
- nunomaduro/collision: ^4.2
- orchestra/testbench: ^5.2
- phpunit/phpunit: ^9.1
This package is auto-updated.
Last update: 2024-03-29 04:25:36 UTC
README
Installing
$ composer require duc_cnzj/model-filter
Usage
- 生成filter
自动会加上 Filter 后缀
php artisan make:filter User or php artisan make:filter UserFilter
Model 引入 Filter
# User.php class User extends Model { use HasFilter; }
控制器中使用
User::filter($request)->get(); or User::filter(new UserFilter($request))->get(); or User::filter(['name' => 'duc'])->get();
筛选filter参数
User::filter($request, ['name'])->get();
带上前缀
User::filter($request, ['name'], 'user')->get();
自定义入参过滤规则
# 默认是 return array_filter($inputs, function ($item) { return !is_null($item); }); # 自定义的话,请在 boot 方法这样写 Filter::setGetFilterCallback('array_filter'); //callback 第一个参数就是inputs Filter::setGetFilterCallback(function ($items) { return array_filter($items, function ($value, $key) { return $key !== 'sb'; }, ARRAY_FILTER_USE_BOTH); }); //callback 第一个参数就是inputs
Contributing
License
MIT