一个用于轻松为Eloquent查询添加过滤功能的Laravel扩展包
v0.0.2
2024-09-18 10:33 UTC
Requires
- php: >=8
Requires (Dev)
- orchestra/testbench: ^9.4
- phpstan/phpstan: ^1.12
- phpunit/phpunit: ^11.3
README
Laravel Filter 是一个Laravel扩展包,可以轻松为Eloquent查询添加过滤功能。
您可以为Eloquent查询添加过滤功能
- 过滤单个或多个列
- 使用可能的值列表(数组)过滤列
用法
通过以下方式安装
composer require emmadonjo/laravel-filter
... use Emmadonjo\LaravelFilter\Contracts\Filterable; use Emmadonjo\LaravelFilter\Concerns\HasFilter; class Post extends Model implements Filterable { use HasFilter; public function filterableColumns(): array { return [ 'slug', 'author_id', 'status' ]; } } // filter posts $filters = ['author_id' => 1, 'status' => 'published']; Post::filter($filters)->get(); // filter a post's column with multiple possible values $filters = ['status' => ['scheduled', 'draft']]; Post::filter($filters)->get(); // combine both $filters = [ 'status' => ['scheduled', 'draft'], 'author_id' => 1 ]; Post::filter($filters)->get();
更新日志
请参阅发布版本以获取有关最近更改的更多信息。
贡献
欢迎提交拉取请求。请确保遵循PSR编码标准,并满足静态分析的9级水平。
许可证
MIT许可证(MIT)。有关详细信息,请参阅LICENSE。