bagusindrayana / laravel-filter
过滤laravel eloquent模型
0.0.2
2021-07-08 01:02 UTC
This package is auto-updated.
Last update: 2024-09-23 10:48:47 UTC
README
过滤laravel eloquent模型
安装
composer require bagusindrayana/laravel-filter
- 在模型中使用
#use trait use Bagusindrayana\LaravelFilter\Traits\LaravelFilter; class User extends Authenticatable { use HasFactory, Notifiable,LaravelFilter; // }
- 使用特性
$datas = User::filters('john',['name','email'])->get();
- 从HTML表单中获取名称输入使用特性
$datas = User::filtersInput(['name','email'],'input_name')->get(); //example if input name is "search" so you should replace input_name with "search"
- 在模型中设置属性
class User extends Authenticatable { use HasFactory, Notifiable,LaravelFilter; protected $filterFields = [ 'name', 'email' ]; } //you will only need call fuction name User::filters('john')->get(); User::filtersInput(null,'search')->get();
- 关系格式,您需要使用特性来对所有模型的关系进行操作
protected $filterFields = [ 'name', 'email', [ 'Role'=>[ 'role_name' ] ] ]; //or when call function User::filtersInput([ 'name', 'email', [ 'Role'=>[ 'role_name' ] ] ],'search')->get();
可用范围
- filters(value,field)
- filtersInput(field,inputName)
- orFilters(value,field)
- orFiltersInput(field,inputName)