putchi/state-keepers

Laravel应用程序的状态保持器

2.1.1 2022-11-20 09:36 UTC

This package is auto-updated.

Last update: 2024-09-20 13:54:24 UTC


README

Laravel应用程序的状态保持器

在闭包内捕获任何异常都将被处理,如果需要,将回滚到应用程序的先前状态,以确保不会在您的数据库上存储部分数据。

先决条件

此包是Laravel的扩展,仅在Laravel 5.7及以上版本中工作。

安装

克隆或下载仓库,或使用以下composer进行安装

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文件以获取详细信息。