widiu7omo/filament-bandel

带 Filament Bandel 的禁止模型

v2.0.1 2024-05-24 11:26 UTC

This package is auto-updated.

Last update: 2024-09-24 12:18:37 UTC


README

此代码从以下项目分支而来 - Truong Thanh Tung Filament Ban

简介

我们在后台使用 cybercog 的 laravel-ban

single_ban_user bulk_ban_user

要求

  • Laravel 10
  • FilamentPHP

安装

您可以通过 composer 安装此软件包

composer require widiu7omo/filament-bandel

您可以使用以下命令发布和运行迁移

php artisan vendor:publish --tag="filament-bandel-migrations"
php artisan migrate

您可以使用以下命令发布和运行翻译

php artisan vendor:publish --tag="filament-bandel-translations"

您可以使用以下命令从 cybercog/laravel-ban 发布配置文件

php artisan vendor:publish --tag="ban-config"

准备可被禁止的模型

use Cog\Contracts\Ban\Bannable as BannableContract;
use Cog\Laravel\Ban\Traits\Bannable;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable implements BannableContract
{
    use Bannable;
}

准备可被禁止模型数据库表

可被禁止模型必须有一个名为 banned_atnullable timestamp 列。此值用作标志,简化了检查用户是否被禁止。如果您正在尝试使默认的 Laravel 用户模型成为可被禁止的,可以使用以下示例。

在 Filament 资源中注册禁止操作

在您的模型资源内部注册 BanActionUnbanAction 操作。

    public static function table(Table $table): Table
    {
        return $table
            ->actions([
//                ...rest,
                \Widiu7omo\FilamentBandel\Actions\BanAction::make(),
                \Widiu7omo\FilamentBandel\Actions\UnbanAction::make()
            ]);
    }

在 Filament 资源中注册批量禁止/解禁操作

在您的模型资源内部注册 BanBulkActionUnbanBulkAction 操作。

    public static function table(Table $table): Table
    {
        return $table
            ->prependBulkActions([
//            ...rest
                \Widiu7omo\FilamentBandel\Actions\BanBulkAction::make('banned_model'),
                \Widiu7omo\FilamentBandel\Actions\UnbanBulkAction::make('unbanned_model'),
            ]);
    }

更新日志

有关最近更改的更多信息,请参阅 更新日志

贡献

有关详细信息,请参阅 贡献指南

安全漏洞

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

鸣谢

许可证

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