
Comment installer FOSUserBundle avec Symfony 4
FOSUserBundle est certainement le bundle le plus populaire pour gérer les utilisateurs de Symfony.
Avec la dernière version majeure de Symfony (4), l’organisation du code du framework est un peu différente. La documentation officielle du processus d’installation de cet ensemble n’est pas claire.
Vous trouverez ci-dessous les étapes nécessaires à l’utilisation de FOSUserBundle. Vous pouvez obtenir toutes les sources de cette installation sur github.
Étape 1: Installation du squelette Symfony 4 et des composants obligatoires
Installation de Symfony 4 squelette
La première étape est l’installation du squelette de symfony pour partir d’une base propre.
Doctrine
Object-Relational-Mapper pour gérer la base de données
Vous devez pointer sur le project pour instaler l'ORM
Ou
A cette étape, vous devez modifier votre fichier de configuration .env et éventuellement config/packages/doctrine.yaml.
En .env, la chaîne à modifier est la suivante :
Annotations
Docblock Annotations Parser utilisé avec Doctrine
SwiftMailerBundle
Swiftmailer, PHP messagerie gratuite et riche en fonctionnalités
Twig
Twig, le langage de template flexible, rapide et sécurisé pour PHP
Web Server
Symfony WebServerBundle
Étape 2: Téléchargez FOSUserBundle à l'aide de composer
A la fin de l'installation, vous aurez le message d'erreur suivant:
The child node "db_driver" at path "fos_user" must be configured.
C'est normal, vous devez créer votre classe d'utilisateurs et configurer FOSUserBundle.
Étape 3: Créez votre classe d'utilisateurs
Créez src/Entity/User.php qui étend de la classe FOSUserBundle BaseUser.
Étape 4: configurez le fichier security.yml de votre application
Modifier le fichier security.yml sur le chemin config/packages/security.yaml (Configuration de symfony FOSUserBundle security)
Étape 5: Configurez le FOSUserBundle
Créer un fichier config/packages/fos_user.yaml
Mettez à jour config/packages/framework.yaml pour ajouter une configuration de modèle
Étape 6: Importer le routage FOSUserBundle
Créer config/routes/fos_user.yaml
Étape 7: mettez à jour votre schéma de base de données
À ce stade, tout est installé et configuré pour utiliser FOSUserBundle dans Symfony 4. Exécutez la commande suivante pour vérifier si tout va bien
Ouvrir la page http://localhost:8000/register et créer un compte

Ensuite S'authetifier http://localhost:8000/login
