litepie / activities
一个非常简单的活动记录器,用于监控您的网站或应用程序的用户
Requires
- php: ^7.2
- spatie/laravel-activitylog: ~3.8
This package is auto-updated.
Last update: 2024-08-29 04:43:23 UTC
README
spatie/laravel-activitylog
包提供了易于使用的功能来记录应用程序用户的操作。它还可以自动记录模型事件。该包将所有活动存储在 activity_log
表中。
以下是一个如何使用它的示例
activity()->log('Look, I logged something');
您可以使用 Litepie\Activities\Models\Activity
模型检索所有活动。
Activity::all();
以下是一个更高级的示例
activity() ->performedOn($anEloquentModel) ->causedBy($user) ->withProperties(['customProperty' => 'customValue']) ->log('Look, I logged something'); $lastLoggedActivity = Activity::all()->last(); $lastLoggedActivity->subject; //returns an instance of an eloquent model $lastLoggedActivity->causer; //returns an instance of your user model $lastLoggedActivity->getExtraProperty('customProperty'); //returns 'customValue' $lastLoggedActivity->description; //returns 'Look, I logged something'
以下是一个关于 事件记录 的示例。
$newsItem->name = 'updated name'; $newsItem->save(); //updating the newsItem will cause the logging of an activity $activity = Activity::all()->last(); $activity->description; //returns 'updated' $activity->subject; //returns the instance of NewsItem that was created
调用 $activity->changes
将返回此数组
[ 'attributes' => [ 'name' => 'updated name', 'text' => 'Lorum', ], 'old' => [ 'name' => 'original name', 'text' => 'Lorum', ], ];
文档
您可以在 https://docs.spatie.be/laravel-activitylog/v2 上找到文档。
如果您在使用此包时遇到困难,或者发现了错误,或者对活动日志有任何一般性的问题或建议,请随时在 GitHub 上 创建问题,我们将尽快处理。
如果您发现了一个安全问题,请通过电子邮件 [email protected] 联系我们,而不是使用问题跟踪器。
安装
您可以通过 composer 安装此包
composer require spatie/laravel-activitylog
该包将自动注册自己。
您可以使用以下命令发布迁移
php artisan vendor:publish --provider="Litepie\Activities\ActivitylogServiceProvider" --tag="migrations"
注意:默认迁移假设您正在使用整数作为模型 ID。如果您正在使用 UUID 或其他格式,请在继续之前调整已发布迁移中 subject_id 和 causer_id 字段的格式。
发布迁移后,您可以通过运行迁移来创建 activity_log
表
php artisan migrate
您还可以选择使用以下命令发布配置文件
php artisan vendor:publish --provider="Litepie\Activities\ActivitylogServiceProvider" --tag="config"
这是已发布配置文件的内容
return [ /** * When set to false, activitylog will not * save any activities to the database. */ 'enabled' => env('ACTIVITY_LOGGER_ENABLED', true), /** * Running the clean-command will delete all activities * older than the number of days specified here. */ 'delete_records_older_than_days' => 365, /** * When not specifying a log name when logging activity * we'll using this log name. */ 'default_log_name' => 'default', /** * When set to true, the subject returns soft deleted models. */ 'subject_returns_soft_deleted_models' => false, /** * The model used to log the activities. * It should be or extend the Litepie\Activities\Models\Activity model. */ 'activity_model' => \Litepie\Activities\Models\Activity::class, ];
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
测试
$ composer test
贡献
有关详细信息,请参阅 CONTRIBUTING。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 [email protected] 联系我们,而不是使用问题跟踪器。
Postcardware
您可以使用此包,但如果它进入您的生产环境,我们非常感谢您从您的家乡寄给我们一张明信片,提及您正在使用我们的哪些包。
我们的地址是:Spatie,Samberstraat 69D,2060 安特卫普,比利时。
我们将发布所有收到的明信片 在我们的公司网站上。
鸣谢
支持我们
Spatie 是一家位于比利时安特卫普的网页设计公司。您可以在我们的网站上找到我们所有开源项目的概述 在这里。
您的业务是否依赖于我们的贡献?请通过Patreon联系我们并支持我们。所有承诺都将专门用于维护和新酷炫功能的资源配置。
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。