alexjustesen / filament-spatie-laravel-activitylog
Requires
- php: ^8.0 || ^8.1 || ^8.2
- filament/filament: ^3.0
- illuminate/contracts: ^8.0 || ^9.0 || ^10.0
- spatie/laravel-activitylog: ^4.3
- spatie/laravel-package-tools: ^1.9.2
Requires (Dev)
- nunomaduro/collision: ^5.10 || ^6.0
- nunomaduro/larastan: ^1.0 || ^2.0.1
- orchestra/testbench: ^6.22 || ^7.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
- spatie/laravel-ray: ^1.26
README
此包提供了一个 Filament 资源,显示使用 spatie/laravel-activitylog
包创建的所有活动日志。它还提供了相关模型的关联管理器。
安装
警告
版本 ^0.7 支持 Filament v3。
您可以通过 composer 安装此包
// For Filament v3 composer require alexjustesen/filament-spatie-laravel-activitylog:^0.7 // For Filament v2 composer require alexjustesen/filament-spatie-laravel-activitylog:^0.6
您可以使用以下命令发布配置文件
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], ];
使用方法
此包将自动注册配置 resource.filament-resource
中指定的 ActivityResource
类。您可以在访问 Filament 管理面板时看到它。
自定义 ActivityResource
您可以通过发布配置文件并更新 resource.filament-resource
值来替换使用的 ActivityResource
。使用此功能创建自己的 ActivityResource
类,并在 AlexJustesen\FilamentSpatieLaravelActivitylog\Resources\ActivityResource::class
处扩展原始类。这将允许您自定义一切,例如视图、表格、表单和权限。如果您希望在列表和查看页面上更改资源,请确保在新资源上替换 getPages
方法,并创建自己的 ListPage
和 ViewPage
类以引用自定义的 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 了解详细信息。
安全漏洞
请参阅 我们的安全策略 了解如何报告安全漏洞。
鸣谢
- Alex Justesen
- Ryan Chandler(原始创建者)
- 所有贡献者
许可证
MIT 许可证(MIT)。请参阅 许可证文件 了解更多信息。