tapp / filament-authentication-log
Filament身份验证日志插件。
Requires
- php: ^8.1
- filament/filament: ^3.0-stable
- rappasoft/laravel-authentication-log: ^4.0
- spatie/laravel-package-tools: ^1.9
Requires (Dev)
- laravel/pint: ^1.11
README
为Laravel Authentication Log包提供的一个Filament插件。
此包提供了一个Filament资源和关系管理器,用于Laravel Authentication Log。
要求
- PHP 8.1+
- Filament 3
依赖项
版本兼容性
安装
您可以通过Composer安装此插件
composer require tapp/filament-authentication-log:"^3.1"
遵循laravel-authentication-log的配置说明
- 发布并运行迁移
- 将
AuthenticationLoggable
和Notifiable
特性添加到您的User
模型中
注意 对于 Filament 2.x,请检查 2.x 分支
您可以使用以下命令发布翻译文件
php artisan vendor:publish --tag="filament-authentication-log-translations"
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="filament-authentication-log-config"
使用资源
将此插件添加到plugins()
方法中的一个面板中。例如,在app/Providers/Filament/AdminPanelProvider.php
中
use Tapp\FilamentAuthenticationLog\FilamentAuthenticationLogPlugin; public function panel(Panel $panel): Panel { return $panel // ... ->plugins([ FilamentAuthenticationLogPlugin::make() // ->panelName('admin') // Optional: specify the panel name if needed ]); }
这就完成了!现在您可以在左侧边栏中看到身份验证日志资源。
此自定义->panelName('admin')
允许在具有多个面板(如开发者和管理员面板)时进行更好的组织,其中在某个面板中使用FilamentAuthenticationLogPlugin
,但用户资源只在其他面板中可用。
资源外观
使用关系管理器
将Tapp\FilamentAuthenticationLog\RelationManagers\
添加到使用AuthenticationLoggable
特质的Filament资源上的getRelations()
方法中。
例如,在App\Filament\Resources\UserResource.php
中
use Tapp\FilamentAuthenticationLog\RelationManagers\AuthenticationLogsRelationManager; public static function getRelations(): array { return [ AuthenticationLogsRelationManager::class, // ... ]; }
关系管理器外观
显示身份验证用户名称
要显示实际的身份验证用户名称而不是类名,您可以配置插件以显示特定字段。默认情况下,如果有可用的name
字段,它将使用该字段。如果您的模型没有name
列,您可以添加一个自定义属性
在您的模型中
public function getNameAttribute(): string { return trim($this->first_name . ' ' . $this->last_name); }
配置
要指定用于显示身份验证用户的自定义字段,更新配置文件config/filament-authentication-log.php
'authenticatable' => [ 'field-to-display' => 'name', // Change 'name' to your custom field if needed ],