dfox288 / culpa
为Laravel 7+的Eloquent模型添加Blameable支持
10.0.1
2023-02-28 10:10 UTC
Conflicts
This package is not auto-updated.
Last update: 2024-09-24 17:44:22 UTC
README
使用BlueprintBigInt作为蓝图类
Culpa for Laravel 5 & 6

Blameable扩展用于Laravel 5 & 6的Eloquent ORM模型。此扩展在创建、更新或软删除模型时自动添加对认证用户的引用。
免责声明:我创建此存储库是因为我不想在我的composer.json中包含原始分叉的dev-master版本。一旦原始的pull请求被合并,此包可能会变得过时,您最好在一年内切换回去。由于命名空间和目录结构的更改,此包与原始Culpa for Laravel < 4不兼容。
安装
要在项目中安装此包
- 运行
composer require nstapelbroek/culpa
, - 将以下内容添加到config/app.php中的
providers
列表中:"Culpa\CulpaServiceProvider"
, - 将配置发布到您的应用:
php artisan vendor:publish
用法
您可以通过添加受保护的属性和模型观察者来为每个模型添加可审计的字段。属性$blameable
包含您希望记录的事件 - 目前这仅限于创建、更新和删除 - 这些功能与Laravel的时间戳相同。
use Culpa\Traits\Blameable; use Culpa\Traits\CreatedBy; use Culpa\Traits\DeletedBy; use Culpa\Traits\UpdatedBy; use Illuminate\Database\Eloquent\Model; class Comment extends Model { use Blameable, CreatedBy, UpdatedBy, DeletedBy; protected $blameable = array('created', 'updated', 'deleted'); // Other model logic here }
- 在创建时,认证用户将被设置为
created_by
, - 在创建和更新时,认证用户将被设置为
updated_by
, - 如果模型支持软删除,则在删除时将在
deleted_by
中设置认证用户。
要激活这些字段的自动更新,您需要将blamable特性添加到模型中。就这样!需要更多Culpa的调整选项?请查看[Tweaks and Configuration文档](docs/1. Tweaks and Configuration.md)。
许可
Culpa是在MIT许可证下发布的。