Gérez vos utilisateurs avec une ressource utilisateur hautement personnalisable pour FilamentPHP avec intégration de filament-shield et d'usurpation d'identité de filament.
pour le filament v2, veuillez utiliser ce dépôt
Ressource des utilisateurs
Autoriser la publication d'une ressource utilisateur
Autoriser l'utilisation du bouclier
Autoriser l'utilisation de l'usurpation d'identité
Autoriser l'utilisation de la classe Facade pour personnaliser la ressource utilisateur actuelle
Intégration avec les équipes Laravel Jetstream
Modèle utilisateur personnalisé à partir du fichier de configuration
modèle d'équipe personnalisé à partir du fichier de configuration
Modèle de rôle personnalisé à partir du fichier de configuration
Page de profil utilisateur Laravel Jetsream
Autoriser les avatars des utilisateurs/équipes
Pages d'inscription/de connexion personnalisées pour Laravel Jetstream
Ajouter une page OTP au processus d'enregistrement
le compositeur nécessite des utilisateurs de Tomatophp/filament
enregistrez enfin le plugin sur /app/Providers/Filament/AdminPanelProvider.php
->plugin(TomatoPHPFilamentUsersFilamentUsersPlugin::make())
vous pouvez utiliser le bouclier pour protéger votre ressource et autoriser les rôles d'utilisateur en l'installant d'abord
le compositeur nécessite bezhansalleh/filament-shield
Ajoutez le trait SpatiePermissionTraitsHasRoles à votre(vos) modèle(s) utilisateur :
utilisez IlluminateFoundationAuthUser comme authentifiable ; utilisez SpatiePermissionTraitsHasRoles ; l'utilisateur de classe étend Authenticatable{ utilisez HasRoles ; //...}
Publiez le fichier de configuration puis configurez votre configuration :
->plugin(BezhanSallehFilamentShieldFilamentShieldPlugin::make())
Exécutez maintenant la commande suivante pour installer Shield :
Bouclier artisanal php : installer
Nous pouvons maintenant publier les actifs du package.
Vendeur artisanal php :publish --tag="filament-users-config"
maintenant sur votre configuration filament-users.php
autorisez le bouclier
/* * Bouclier de filament utilisateur */"shield" => vrai,
maintenant efface ta configuration
configuration artisanale php : cache
pour plus d'informations, consultez le Filament Shield
vous pouvez utiliser l'usurpation d'identité pour usurper l'identité de l'utilisateur en l'installant d'abord
le compositeur nécessite stechstudio/filament-usurpation d'identité
maintenant sur votre configuration filament-users.php
autorisez le bouclier
/* * Usurpation du filament utilisateur */"usurper l'identité" => true,
maintenant efface ta configuration
configuration artisanale php : cache
pour plus d'informations, consultez l'usurpation d'identité du filament
vous pouvez utiliser les équipes Laravel Jetstream en l'installant d'abord
le compositeur nécessite laravel/jetstream
maintenant vous devez installer le jetstream avec livewire
php artisan jetstream : installer livewire
allez sur jetstream.php
et autorisez la fonctionnalité équipes
'features' => [// Features::termsAndPrivacyPolicy(),// Features::profilePhotos(),// Features::api(), Features::teams(['invitations' => true]),// Fonctionnalités ::accountDeletion(),],
vous devez maintenant publier la migration des équipes depuis Jetstream
fournisseur artisanal php :publish --tag=jetstream-teams-migrations
maintenant vous devez migrer la migration des équipes
php artisan migrer
maintenant sur votre configuration filament-users.php
autorisez le bouclier
/* * Équipes de filaments utilisateur */"teams" => true,
maintenant efface ta configuration
configuration artisanale php : cache
vous pouvez publier la ressource dans votre projet
php artisan filament-users:publier
il publiera la ressource dans votre projet
que d'aller dans le fichier de configuration filament-users.php
et de changer le publish_resource
en true
vous pouvez inscrire le responsable de la relation utilisateur à votre projet
utilisez TomatoPHPFilamentUsersFacadesFilamentUser; fonction publique boot() { FilamentUser::register([ FilamentResourcesRelationManagersRelationManager::make() // Remplacez par votre gestionnaire de relations personnalisé ]); }
nous avons ajouté de nombreux crochets pour faciliter l'attachement d'actions, de colonnes, de filtres, etc.
utilisez TomatoPHPFilamentUsersResourcesUserResourceTableUserTable; fonction publique boot() { TableUtilisateur::register([ FilamentTablesColumnsTextColumn::make('quelque chose') ]); }
utilisez TomatoPHPFilamentUsersResourcesUserResourceTableUserActions; fonction publique boot() { UserActions::register([ FilamentTablesActionsReplicateAction::make() ]); }
utilisez TomatoPHPFilamentUsersResourcesUserResourceTableUserFilters; fonction publique boot() { UserFilters::register([ FilamentTablesFiltersSelectFilter::make('quelque chose') ]); }
utilisez TomatoPHPFilamentUsersResourcesUserResourceTableUserBulkActions; fonction publique boot() { UserBulkActions::register([ FilamentTablesBulkActionsDeleteAction::make() ]); }
utilisez TomatoPHPFilamentUsersResourcesUserResourceFormUserForm; fonction publique boot() { UserForm::register([ FilamentFormsComponentsTextInput::make('quelque chose') ]); }
utilisez TomatoPHPFilamentUsersResourcesUserResourceActionsManageUserActions; utilisez TomatoPHPFilamentUsersResourcesUserResourceActionsEditPageActions; utilisez TomatoPHPFilamentUsersResourcesUserResourceActionsViewPageActions; utilisez TomatoPHPFilamentUsersResourcesUserResourceActionsCreatePageActions; fonction publique boot() { ManageUserActions::register([ FilamentActionsAction::make('action') ]); EditPageActions::register([ FilamentActionsAction::make('action') ]); ViewPageActions::register([ FilamentActionsAction::make('action') ]); CreatePageActions::register([ FilamentActionsAction::make('action') ]); }
utilisez TomatoPHPFilamentUsersResourcesUserResourceInfolistUserInfolist; fonction publique boot() { UserInfolist::register([ FilamentInfolistsComponentsTextEntry::make('quelque chose') ]); }
vous pouvez personnaliser toutes les classes de ressources pour qu'elles soient n'importe quelle classe de votre choix avec le même retour du fichier de configuration
/** * --------------------------------------------- * Création de ressources * --------------------------------------------- * si vous souhaitez utiliser la classe personnalisée de ressources */'resource' => [ 'table' => [ 'class' => TomatoPHPFilamentUsersResourcesUserResourceTableUserTable::class, 'filters' => TomatoPHPFilamentUsersResourcesUserResourceTableUserFilters::class, 'actions' => TomatoPHPFilamentUsersResourcesUserResourceTableUserActions::class, 'bulkActions' => TomatoPHPFilamentUsersResourcesUserResource TableUserBulkActions::classe, ], 'form' => [ 'class' => TomatoPHPFilamentUsersResourcesUserResourceFormUserForm::class ], 'infolist' => [ 'class' => TomatoPHPFilamentUsersResourcesUserResourceInfoListUserInfoList::class ], 'pages' => [ 'list' => TomatoPHPFilamentUsersResourcesUserResourceActionsManageUserActions::class, 'create' => TomatoPHPFilamentUsersResourcesUserResourceActionsCreatePageActions::class, 'modifier' => TomatoPHPFilamentUsersResourcesUserResourceActionsEditPageActions::class, 'view' => TomatoPHPFilamentUsersResourcesUserResourceActionsViewPageActions::class ] ]
vous pouvez utiliser la ressource utilisateur simple en modifiant la configuration, sur votre configuration filament-users.php
autorisez simple
/** * --------------------------------------------- * Utiliser une ressource simple * --------------------------------------------- * changez la ressource des pages en modaux en autorisant une ressource simple. */'simple' => vrai,
vous pouvez publier le fichier de configuration en utilisant cette commande
Vendeur artisanal php :publish --tag="filament-users-config"
vous pouvez publier le fichier de langues en utilisant cette commande
Vendeur artisanal php :publish --tag="filament-users-lang"
si vous souhaitez exécuter des tests PEST
, utilisez simplement cette commande
test de compositeur
si vous souhaitez corriger le style de code, utilisez simplement cette commande
format du compositeur
si vous souhaitez vérifier le code avec PHPStan
utilisez simplement cette commande
analyse du compositeur
Découvrez notre génial TomatoPHP