mouadziani / laravel-model-trackable
一个Laravel包,允许您使用单个特质跟踪和记录在模型及其关系上应用的内嵌更改
1.0
2020-11-26 18:15 UTC
Requires
- illuminate/database: ~5.6.0|~5.7.0|~5.8.0|^6.0.0|^7.0.0|^8.0.0
- illuminate/events: ~5.6.0|~5.7.0|~5.8.0|^6.0.0|^7.0.0|^8.0.0
- illuminate/support: ^6.0 || ^7.0 || ^8.0
Requires (Dev)
- orchestra/testbench: ~3.6.0|~3.7.0|~3.8.0|^4.0|^5.0|^6.0
- phpunit/phpunit: ^7.0|^8.0
This package is not auto-updated.
Last update: 2024-09-28 10:33:56 UTC
README
一个Laravel包,允许您使用单个特质跟踪和记录在您的(模型及其关系)上应用的内嵌更改
安装
您可以通过composer安装此包
composer require mouadziani/laravel-model-trackable
简单用法
- 首先,您必须将trackable特质应用到您的模型上
use LaravelModelTrackable\Traits\Trackable; class ModelName extends Model { use Trackable; // }
- 如果您想跟踪对模型关系的更改,您需要在模型中添加一个名为
$toBeLoggedRelations
的属性,它必须包含一个关系数组,如下例所示
use LaravelModelTrackable\Traits\Trackable; class ModelName extends Model { use Trackable; public $toBeLoggedRelations = ['relation1', 'relation2']; }
- 然后,您可以得到一个数组,它应该在每次更新后包含对模型应用的所有更改
$model = ModelName::update([ ... ]); // Get list of changed attributes $model->getChangedAttributes();
免责声明
目前此包无法跟踪hasMany、ManyToMany或MorphMany关系
测试
composer test
变更日志
请参阅CHANGELOG以获取更多信息。
贡献
请参阅CONTRIBUTING以获取详细信息。
安全
如果您发现任何与安全相关的问题,请通过电子邮件mouad.ziani1997@gmail.com联系,而不是使用问题跟踪器。
鸣谢
许可证
此包是Treeware。如果您在生产中使用它,那么我们要求您为世界买一棵树以感谢我们的工作。通过为Treeware森林做出贡献,您将为当地家庭创造就业机会并恢复野生动物栖息地。
特色仓库