nico-sorice / laravel-query-filterer
用于通过 HTTP 请求过滤查询的 Laravel 扩展包
0.2.1
2019-03-30 15:06 UTC
Requires
- php: >=7.1.0
- illuminate/container: ~5.5.0|~5.6.0|~5.7.0
- illuminate/contracts: ~5.5.0|~5.6.0|~5.7.0
- illuminate/database: ~5.5.0|~5.6.0|~5.7.0
- illuminate/http: ~5.5.0|~5.6.0|~5.7.0
- illuminate/support: ~5.5.0|~5.6.0|~5.7.0
- illuminate/validation: ~5.5.0|~5.6.0|~5.7.0
This package is auto-updated.
Last update: 2024-09-29 05:20:50 UTC
README
此扩展包允许您轻松、快速地根据 HTTP 请求值设置条件规则以过滤查询。
快速开始
这些说明将帮助您在本地机器上复制项目并运行,以便进行开发和测试。有关如何在生产系统上部署项目的说明,请参阅部署部分。
先决条件
此扩展包需要 php7.0 或更高版本,laravel 5.5 或更高版本,并且您的计算机上已安装 composer。
composer
php >= 7.0.0
laravel >= 5.5
安装
需要使用 composer
composer require nico-sorice/laravel-query-filterer
使用方法
在您的控制器中
<?php
use NicoSorice\QueryFilterer\PackageClasses\QueryFilterer;
New QueryFilterer(
Model::query(),
request()
)->filter([
'id' => WhereFilter::class,
'status_id' => WhereInFilter::class,
'date' => (new WhereDateBetweenFiter)->setFormat('d/m/Y'),
])
该包包括需要它们的过滤器的验证规则
在您的请求中
<?php
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'id' => 'nullable|integer',
'date' => [
'nullable',
new FilterWhereDateBetweenValidationRule
]
];
}
贡献
请阅读 CONTRIBUTING.md 了解我们的行为准则以及向我们提交拉取请求的流程。
版本控制
我们使用 SemVer 进行版本控制。有关可用版本,请参阅此存储库的 标签。
作者
- Nicolas Sorice - 初始工作 - GitLab 个人资料
还可以查看参与此项目的 CONTRIBUTORS.md 列表。
许可证
此项目采用 MIT 许可证 - 有关详细信息,请参阅 LICENSE.md 文件。