uccellolabs / filament-tenancy
使用 Filament 简易管理租户。
dev-main
2022-12-21 19:46 UTC
Requires
- php: ^8.0
- filament/filament: ^2.0
- spatie/laravel-sluggable: ^3.4
This package is auto-updated.
Last update: 2024-09-21 23:41:18 UTC
README
Filament Tenancy
使用 Filament 简易管理租户。
安装
您可以通过 composer 安装此包
composer require uccellolabs/filament-tenancy
配置
编辑 app/Models/User.php
并添加以下代码
use Uccellolabs\FilamentTenancy\Support\Traits\UserBelongsToTenant; class User extends Authenticatable { use UserBelongsToTenant; protected $fillable = [ // ... 'current_tenant_id', ]; }
编辑 app/Filament/Resources/UserResource/Pages/ListUsers.php
并添加以下代码
use Uccellolabs\FilamentTenancy\Support\Traits\CurrentTenant; class ListUsers extends ListRecords { use CurrentTenant; protected function getTableQuery(): Builder { $userIds = $this->getCurrentTenant()?->users()->pluck('users.id') ?? []; return User::whereIn('id', $userIds); } }
使用方法
use Uccellolabs\FilamentTenancy\Support\Traits\CurrentTenant;
在您的表中添加名为 tenant_id
的列,并在您的模型中添加以下代码
use Uccellolabs\FilamentTenancy\Support\Traits\BelongsToTenant; class YourModel extends Model { use BelongsToTenant; }
致谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。