boing6002/versioning

使用 Laravel 中的乐观锁模式防止更新冲突

1.1.10 2018-11-16 14:58 UTC

This package is not auto-updated.

Last update: 2024-09-29 23:09:45 UTC


README

Codacy Badge StyleCI License Total Downloads Latest Stable Version

使用 Laravel 中的乐观锁模式防止更新冲突

详细信息

  • 该包创建了一个 versionings 表,用于存储所有可版本化模型的版本
  • 通过在模型上使用 Versionable 特性,版本控制可以自动处理
  • 默认情况下,特性在模型检索后附加一个 version 属性,用于跟踪版本,并在调用更新时期望模型上存在相同的属性
  • 默认版本化属性可以通过在模型上使用 protected $versioningAttribute = 'customVersionAttribte' 进行自定义
  • 该特性可用于已经存在于数据库中的模型,版本控制从检索这些模型的第一步开始
  • 当可版本化模型被删除时,其版本控制也会被删除。如果模型使用 SoftDeletes,则版本控制仅在模型的 forceDelete 时被删除
  • 如果版本不正确,则抛出 ConflictHttpException
  • 包中包含测试
  • 默认情况下,该包包含在 Enso

配置 & 使用

请务必查看完整的 Enso 文档,请访问 docs.laravel-enso.com

贡献

欢迎。拉取请求是很好的,但问题也同样重要。

许可协议

本包在 MIT 许可证下发布。