tapp/filament-authentication-log

Filament身份验证日志插件。

v3.1.1 2024-06-25 20:50 UTC

This package is auto-updated.

Last update: 2024-09-25 21:23:25 UTC


README

Latest Version on Packagist Code Style Action Status - Pint Total Downloads

Laravel Authentication Log包提供的一个Filament插件。

此包提供了一个Filament资源和关系管理器,用于Laravel Authentication Log

要求

依赖项

版本兼容性

安装

您可以通过Composer安装此插件

composer require tapp/filament-authentication-log:"^3.1"

遵循laravel-authentication-log的配置说明

  • 发布并运行迁移
  • AuthenticationLoggableNotifiable特性添加到您的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,但用户资源只在其他面板中可用。

资源外观

Filament Authentication Log Resource

Filament Authentication Log Resource with filters and tooltip

使用关系管理器

Tapp\FilamentAuthenticationLog\RelationManagers\添加到使用AuthenticationLoggable特质的Filament资源上的getRelations()方法中。

例如,在App\Filament\Resources\UserResource.php

use Tapp\FilamentAuthenticationLog\RelationManagers\AuthenticationLogsRelationManager;
 
public static function getRelations(): array
{
    return [
        AuthenticationLogsRelationManager::class,
        // ...
    ];
}

关系管理器外观

Filament Authentication Log Relation Manager

显示身份验证用户名称

要显示实际的身份验证用户名称而不是类名,您可以配置插件以显示特定字段。默认情况下,如果有可用的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
],