filament-shield と filament-impersonate を統合した FilamentPHP の高度にカスタマイズ可能なユーザー リソースを使用してユーザーを管理します。
フィラメント v2 の場合は、このリポジトリを使用してください
ユーザーリソース
ユーザーリソースの公開を許可する
シールドの使用を許可する
偽装の使用を許可する
現在のユーザー リソースをカスタマイズするためにファサード クラスの使用を許可する
Laravel Jetstream チームとの統合
構成ファイルからのカスタム ユーザー モデル
構成ファイルからのカスタム チーム モデル
構成ファイルからのカスタム ロール モデル
Laravel Jetsream ユーザープロフィールページ
ユーザー/チームのアバターを許可する
Laravel Jetstream のカスタム登録/ログイン ページ
OTP ページを登録プロセスに追加する
コンポーザーには Tomatophp/filament-users が必要です
最後に/app/Providers/Filament/AdminPanelProvider.php
にプラグインを登録します。
->プラグイン(TomatoPHPFilamentUsersFilamentUsersPlugin::make())
最初にシールドをインストールすることで、シールドを使用してリソースを保護し、ユーザーの役割を許可できます
作曲家には bezhansalleh/filament-shield が必要です
SpatiePermissionTraitsHasRoles トレイトを User モデルに追加します。
IlluminateFoundationAuthUser を Authenticatable として使用します;SpatiePermissionTraitsHasRoles を使用します;class User extends Authenticatable{ use HasRoles; // ...}
構成ファイルを公開して、構成をセットアップします。
->プラグイン(BezhanSallehFilamentShieldFilamentShieldPlugin::make())
次のコマンドを実行してシールドをインストールします。
php 職人シールド:インストール
これで、パッケージ アセットを公開できるようになりました。
php 職人ベンダー:publish --tag="filament-users-config"
filament-users.php
設定でシールドを許可します
/* * ユーザー フィラメント シールド */"shield" => true,
今すぐ設定をクリアしてください
php 職人設定:キャッシュ
詳細については、フィラメント シールドを確認してください。
最初にインストールすることで、 impersonate を使用してユーザーになりすますことができます
作曲家には stechstudio/filament-impersonate が必要です
filament-users.php
設定でシールドを許可します
/* * ユーザー フィラメントの偽装 */"impersonate" => true,
今すぐ設定をクリアしてください
php 職人設定:キャッシュ
詳細については、Filament Impersonate を確認してください。
Laravel Jetstream Teams を最初にインストールすると使用できます
コンポーザーにはlaravel/jetstreamが必要です
次に、ライブワイヤーを使用してジェットストリームをインストールする必要があります
php 職人ジェットストリーム:livewire のインストール
jetstream.php
に移動し、チーム機能を許可します
'features' => [// 機能::termsAndPrivacyPolicy(),// 機能::profilePhotos(),// 機能::api(), 機能::teams(['invitations' => true]),//機能::accountDeletion()、]、
ここで、jetstream からチームの移行を公開する必要があります
php 職人ベンダー:publish --tag=jetstream-teams-migrations
次に、チームの移行を移行する必要があります
php 職人の移行
filament-users.php
設定でシールドを許可します
/* * ユーザー フィラメント チーム */"チーム" => true,
今すぐ設定をクリアしてください
php 職人設定:キャッシュ
リソースをプロジェクトに公開できます
php 職人フィラメントユーザー:公開
リソースをプロジェクトに公開します
filament-users.php
設定ファイルに移動し、 publish_resource
true
に変更します。
ユーザーリレーションマネージャーをプロジェクトに登録できます
TomatoPHPFilamentUsersFacadesFilamentUser を使用します;パブリック関数 boot() { フィラメントユーザー::register([ FilamentResourcesRelationManagerRelationManager::make() // カスタム リレーション マネージャーに置き換えます ]); }
アクション、列、フィルターなどを簡単に接続できるようにするために、多くのフックを追加しました。
TomatoPHPFilamentUsersResourcesUserResourceTableUserTable を使用します;パブリック関数 boot() { UserTable::register([ FilamentTablesColumnsTextColumn::make('something') ]); }
TomatoPHPFilamentUsersResourcesUserResourceTableUserActionsを使用します;パブリック関数boot() { UserActions::register([ FilamentTablesActionsReplicateAction::make() ]); }
TomatoPHPFilamentUsersResourcesUserResourceTableUserFilters;パブリック関数 boot() を使用します。 { UserFilters::register([ FilamentTablesFiltersSelectFilter::make('something') ]); }
TomatoPHPFilamentUsersResourcesUserResourceTableUserBulkActions を使用します;パブリック関数 boot() { UserBulkActions::register([ FilamentTablesBulkActionsDeleteAction::make() ]); }
TomatoPHPFilamentUsersResourcesUserResourceFormUserFormを使用します;パブリック関数boot() { ユーザーフォーム::register([ FilamentFormsComponentsTextInput::make('something') ]); }
TomatoPHPFilamentUsersResourcesUserResourceActionsManageUserActions を使用します;TomatoPHPFilamentUsersResourcesUserResourceActionsEditPageActions を使用します;TomatoPHPFilamentUsersResourcesUserResourceActionsViewPageActions を使用します;TomatoPHPFilamentUsersResourcesUserResourceActions を使用しますCreatePageActions;パブリック関数 boot() { ManageUserActions::register([ FilamentActionsAction::make('action') ]); EditPageActions::register([ FilamentActionsAction::make('action') ]); ViewPageActions::register([ FilamentActionsAction::make('action') ]); CreatePageActions::register([ FilamentActionsAction::make('action') ]); }
TomatoPHPFilamentUsersResourcesUserResourceInfolistUserInfolist;パブリック関数 boot() を使用します。 { UserInfolist::register([ FilamentInfolistsComponentsTextEntry::make('something') ]); }
構成ファイルから同じ戻り値を使用して、すべてのリソース クラスを任意のクラスにカスタマイズできます。
/** * --------------------------------------------- *リソースの構築 * -------------------------------------- * ifリソースカスタムクラスを使用したい */'resource' => [ 'table' => [ 'class' => TomatoPHPFilamentUsersResourcesUserResourceTableUserTable::class, 'filters' => TomatoPHP FilamentUsersResourcesUserResourceTableUserFilters::class, 'actions' => TomatoPHPFilamentUsersResourcesUserResourceTableUserActions::class, 'bulkActions' => TomatoPHPFilamentUsersResourcesUserResourceTable UserBulkActions::クラス、 ], 'form' => [ 'class' => TomatoPHPFilamentUsersResourcesUserResourceFormUserForm::class ], 'infolist' => [ 'class' => TomatoPHPFilamentUsersResourcesUserResourceInfoListUserInfoList::class ], 'pages' => [ 'list' => TomatoPHPFilamentUsersResourcesUserResourceActionsManageUserActions::class, 'create' => TomatoPHPFilamentUsersResourcesUserResourceActionsCreatePageActions::class, '編集' => TomatoPHPFilamentUsersResourcesUserResourceActionsEditPageActions::class, 'view' => TomatoPHPFilamentUsersResourcesUserResourceActionsViewPageActions::class ] ]
filament-users.php
設定で設定を変更することで、シンプルなユーザーリソースを使用できます。
/** * --------------------------------------------- *シンプルなリソースを使用する * -------------------------------------- *シンプルなリソースを許可することで、リソースをページからモーダルに変更します。 */'simple' => true、
このコマンドを使用して構成ファイルを公開できます
php 職人ベンダー:publish --tag="filament-users-config"
このコマンドを使用して言語ファイルを公開できます
php 職人ベンダー:publish --tag="filament-users-lang"
PEST
テストを実行したい場合は、このコマンドを使用してください。
作曲家テスト
コードスタイルを修正したい場合は、このコマンドを使用してください。
作曲家の形式
PHPStan
でコードを確認したい場合は、このコマンドを使用してください。
作曲家分析
素晴らしい TomatoPHP をチェックしてください