Filament Shield 搭建与使用指南

Filament Shield 搭建与使用指南

filament-shieldThe easiest and most intuitive way to add access management to your Filament Admin Resources, Pages & Widgets through `spatie/laravel-permission`项目地址:https://gitcode.com/gh_mirrors/fi/filament-shield

1. 项目目录结构及介绍

以下是基于 bezhanSalleh/filament-shield 开源项目的典型目录结构:

├── app
│   └── Http
│       └── Kernel.php    # 应用Http中间件组
├── database
│   ├── migrations        # 数据库迁移文件
└── config
    └── filament-shield.php  # Filament Shield 配置文件
  • app/Http/Kernel.php:此文件定义了你的应用使用的HTTP中间件。在安装 Shield 后,你可能需要在此处添加权限检查中间件。

  • database/migrations:包含用于创建权限和角色数据库表的迁移文件。

  • config/fruitcake/laravel-permission.php:这是 laravel-permission 包的配置文件,用来设置角色和权限的行为。

  • config/filament-shield.php:本项目独有的配置文件,用于定制 Shield 的行为,如角色名称、前缀等。

2. 项目的启动文件介绍

bezhanSalleh/filament-shield 并没有特定的启动文件,因为它的功能主要通过 Laravel 的服务提供者自动加载到 Laravel 应用中。然而,以下是关键组件的入口点:

  • config/app.phpproviders 数组中注册 BezhanSalleh\FilamentShield\FilamentShieldServiceProvider::class 来启用该插件。

  • App\Models\User 类或你的自定义用户模型中,引入并使用 Spatie\Permission\Traits\HasRoles 特性以实现角色和权限管理。

  • 当你在 Filament 中创建面板时,调用 FilamentShieldPlugin::make() 来添加 Shield 支持。

3. 项目的配置文件介绍

config/fruitcake/laravel-permission.php 文件允许你定制 laravel-permission 包的行为。以下是几个重要的配置选项:

  • models:定义你的用户模型,比如 'model' => App\Models\User::class
  • default_role_for_new_users:新用户默认分配的角色,例如 'default_role_for_new_users' => 'subscriber'
  • column_names:可以更改角色和权限的数据库列名。

config/filament-shield.php 文件则专门针对 Filament Shield:

  • role_names:设定超级管理员和普通用户的角色名称,默认是 'super_admin''panel_user'
  • permission_prefixes.resource:预设资源的权限前缀列表,你可以在这里添加或删除权限。

要更新这些配置,只需运行 php artisan config:cache 以存储缓存的配置。

完成上述步骤后,你就可以利用 Filament Shield 管理 Filament 中页面、资源和小部件的访问控制了。记得执行必要的命令来安装和生成权限,例如 php artisan shield:install

filament-shieldThe easiest and most intuitive way to add access management to your Filament Admin Resources, Pages & Widgets through `spatie/laravel-permission`项目地址:https://gitcode.com/gh_mirrors/fi/filament-shield

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

廉珏俭Mercy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值