adrolli/filament-spatie-laravel-activitylog

在 Filament 中查看活动日志。

v1.1 2023-08-27 00:10 UTC

This package is auto-updated.

Last update: 2024-08-27 02:16:24 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

此包提供了一种 Filament 资源,用于显示使用 spatie/laravel-activitylog 包创建的所有活动日志。它还提供了一种关系管理器来管理相关模型。

安装

您可以通过 composer 安装此包

composer require alexjustesen/filament-spatie-laravel-activitylog

您可以使用以下命令发布配置文件

php artisan vendor:publish --tag="filament-spatie-activitylog-config"

这是已发布配置文件的内容

return [

    'resource' => [
        'filament-resource' => AlexJustesen\FilamentSpatieLaravelActivitylog\Resources\ActivityResource::class,
        'group' => null,
        'sort'  => null,
    ],

    'paginate' => [5, 10, 25, 50],

];

使用方法

此包将自动注册配置中指定的 ActivityResourceresource.filament-resource。您可以在访问 Filament 管理面板时看到它。

自定义 ActivityResource

您可以通过发布配置文件并更新 resource.filament-resource 的值来替换使用的 ActivityResource。使用此功能创建自己的 ActivityResource 类,并在 AlexJustesen\FilamentSpatieLaravelActivitylog\Resources\ActivityResource::class 扩展原始类。这将允许您自定义视图、表格、表单和权限等一切。如果您希望在列表和查看页面上更改资源,请确保在新资源上替换 getPages 方法,并创建自己的 ListPageViewPage 类以引用自定义的 ActivityResource

自定义组

您可以通过发布配置文件并更新 resource.group 的值来自定义 ActivityResource 的导航组。

自定义排序

您可以通过发布配置文件并更新 resource.sort 的值来自定义 ActivityResource 的导航组。

关系管理器

如果您有一个使用 Spatie\Activitylog\Traits\LogsActivity 特性的模型,您可以将 AlexJustesen\FilamentSpatieLaravelActivitylog\RelationManagers\ActivitiesRelationManager 关系管理器添加到您的 Filament 资源中,以显示在您的模型上执行的所有活动日志。

在自定义关系管理器上显示 subject

在使用关系管理器时,由于主题是父记录,因此不会显示 subject 列。在某些情况下(例如,从子记录聚合活动时),主题可能是另一条记录,并且您想显示此列。在这些情况下,您可以在关系管理器中添加以下代码

public function hideSubjectColumn(): bool
{
    return false;
}

测试

composer test

变更日志

有关最近更改的更多信息,请参阅 RELEASES

贡献

有关详细信息,请参阅 CONTRIBUTING

安全漏洞

有关报告安全漏洞的详细信息,请参阅 我们的安全策略

鸣谢

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件