henzeb / laravel-pipeline-factory
组合复杂管道
v1.5.0
2024-03-11 10:45 UTC
Requires
- php: ^8.1
- henzeb/closure: ^1.7.0
- illuminate/support: ^10|^11
Requires (Dev)
- nesbot/carbon: v2.72.2
- orchestra/testbench: ^8.0|^9.0
- phpstan/phpstan: ^1.4
- phpunit/phpunit: ^9.6.6|^10
README
Laravel 提供了一个方便的管道,可以用来分离逻辑,以便修改对象并允许轻松交换组件。
Laravel Pipeline Factory 将其进一步发展,并提供了一些 '管道',帮助您构建更复杂的管道。
示例
use Illuminate\Support\Facades\Pipeline; use Henzeb\Pipeline\Facades\Pipe; use App\Models\User; $user = User::find(1); Pipeline::send($user) ->through( Pipe::events( Pipe::unless( UserEnteredPasswordTwice::class, ReturnInvalidRequestResponse::class )->else( Pipe::rescue( Pipe::transaction( [ UpdateUser::class, UpdateAddress::class ] ), ReturnFailureResponse::class, ) ), 'updateUserDetails' ) )
安装
只需使用以下命令安装。
composer require henzeb/laravel-pipeline-factory
用法
此包中包含的每个管道都可以被调用。这意味着您不必坚持使用 handle
作为它的 via
方法。
以下是一些可用的管道
测试此包
composer test
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
贡献
有关详细信息,请参阅 CONTRIBUTING。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 henzeberkheij@gmail.com 而不是使用问题跟踪器。
鸣谢
许可证
GNU AGPLv。请参阅 许可证文件 以获取更多信息。