weblynx / laravel-model-audit
用于 Laravel 模型的审计包
dev-master
2022-03-13 16:03 UTC
Requires
- php: ^8.1
This package is auto-updated.
Last update: 2024-09-13 21:35:59 UTC
README
警告:这仍然处于测试版。因此,您可能会遇到问题。
这只是一个小项目,因此更新可能会很少。
安装
composer require weblynx/laravel-model-audit
安装后运行
php artisan migrate
可用的生命周期事件
- 创建
- 更新
- 删除
- 恢复
- 软删除
- 强制删除
发布供应商文件
php artisan vendor:publish
在配置文件中,您将找到一个 auditor.php 文件。
您可以通过注释行来全局禁用任何事件。
<?php return [ 'options' => [ 'created', 'updated', // 'deleted', 'restored', 'soft-deleted', 'force-deleted' ] ];
您可以通过在模型上添加 $excludedAudits 属性来禁用任何事件。
protected array $excludedAudits = [ 'created' ];
特质
WithAuditor
WithAuditor 用于激活包的事件。在您想要进行审计的模型上使用它。
class Model { use WithAuditor; }
HasManyAudits
HasManyAudits 返回一个与创建了模型的模型相关联的 hasMany 关系。
class Model { use HasManyAudits; }
模型
class Auditor
Auditor 类基于配置中定义的提供者具有动态的 belongsTo 关系。例如
将返回一个名为:user() 的 belongsTo 关系。
'providers' => [ 'users' => [ 'driver' => 'eloquent', 'model' => App\Models\User::class, ], ],
下一步
- 添加可以从模型中排除的字段。
- 添加单元测试。