exeko / laravel-simple-query-filter
一个简单的Trait,用于在模型中包含过滤器功能
v2.0
2020-09-24 11:47 UTC
Requires
- php: >=7.3
- illuminate/database: ^8.6
This package is auto-updated.
Last update: 2024-09-24 20:35:24 UTC
README
一个简单的PHP Eloquent扩展,用于通用过滤器。
深受 https://github.com/AlexanderTersky/eloquent-query-filter 的启发,但提供了更好的关系支持
安装
$ composer require exeko/laravel-simple-query-filter
{ "require": { "exeko/laravel-simple-query-filter": "^1.0" } }
用法
我们的请求必须看起来像
/filter[column_name:operator]=something
一些真实生活中的例子
/api/users/?filter[name:like]=john /api/users/?filter[age:>]=18&filter[age:<]=25 /api/users/?filter[gender:<>]=male
在您的模型中包含这个trait
<?php use Illuminate\Database\Eloquent\Model; use Exeko\QueryFilter\Filter; class User extends Model { use Filter; }
控制器
$users=User::filter($request->input('filter'))->get();