grummfy / laravel-restorable-events

此库是用于为 Laravel 存储和恢复事件的助手。

0.5.2 2018-01-29 23:28 UTC

This package is auto-updated.

Last update: 2024-08-28 18:23:10 UTC


README

此库是用于存储和恢复事件的助手。

与 laravel 5.5 兼容。

安装

安装依赖

composer require grummfy/laravel-restorable-events

发布配置

php artisan vendor:publish --tag=config --provider=Grummfy\RestorableEvents\RestorableEventsProvider

创建使用 EventStorableTrait 特性的模型类。如果需要,请查看示例目录。

编辑 Providers\EventServiceProvider.php

  • 使用 EventServiceProviderTrait 特性
  • 您还需要设置以下变量,至少包含这些值
	protected $listen = [
		JsonSerializableContract::class => [
			StorableEventListener::class,
		],
	];

这将允许即时使用事件存储。

用法

对于您想要存储的任何事件,只需扩展 RestorableEvent 或实现两个接口 RestorableContractJsonSerializableContract。其余由监听器完成。

如果您需要在事件恢复时钩入某些更改,只需实现它上面可用的 restored 方法。

如果您需要,也可以对事件进行优先级排序。只需在服务监听器上填写从特性中继承的 $priorities 值。

存储的内容

在派发 CreditRefilled 事件时,它将被保存,但对于每个 Eloquent 模型,仅保存其 id 和名称。

待办事项

  • 单元测试
  • QA 工具
    • travis
    • styleci
    • scrutinizer
    • ...