putchi / state-keepers
Laravel应用程序的状态保持器
2.1.1
2022-11-20 09:36 UTC
Requires
- php: >=8.0.0
- guzzlehttp/guzzle: ^7.0
- laravel/framework: ^9.0
README
Laravel应用程序的状态保持器
在闭包内捕获任何异常都将被处理,如果需要,将回滚到应用程序的先前状态,以确保不会在您的数据库上存储部分数据。
先决条件
此包是Laravel的扩展,仅在Laravel 5.7及以上版本中工作。
安装
composer require putchi/state-keepers
您可以通过运行以下命令将项目文件(配置、资产、翻译等)发布到您自己的项目中
php artisan vendor:publish --provider="StateKeepersServiceProvider"
您可能还需要运行以下命令来清除配置缓存
php artisan config:cache
如果您在安装此包时遇到问题,请查看以下问题列表这里或打开一个新问题。
使用示例
return StateManager::guard(function () {
// Call some function in some model...
// # e.g: return Model::someFunction($arg1, $arg2);
// Side note: don't forget to use whatever parameters you want in the declaration of the anonymous function (above)...
// # e.g: function () use ($arg1, $arg2) {...}
}, function (\Throwable $exception) {
// HERE WE CATCH THE ERROR (IF THERE WAS ONE)
// you can use the $exception to show the error massage like: $exception->getMessage();
// Or you can implement your own customized catch callback in here.
});
贡献
您可以通过fork此仓库或通过pull请求和遵循以下代码行为指南提出新功能(或新保持器)建议。
请阅读CONTRIBUTING.md以获取有关我们代码行为的详细信息以及向我们提交pull请求的过程。
关注此项目以获取更改、状态或版本更新。
版本控制
我们使用SemVer进行版本控制。有关可用的版本,请参阅此存储库的标签。
作者
- Alex Rabinovich - 初始工作 - Putchi
请参阅参与此项目的贡献者列表。
如果您喜欢我们在这里所做的这项工作,请通过star此仓库给我们点赞。
许可
本项目采用MIT许可证 - 请参阅LICENSE.md文件以获取详细信息。