Tuto Symfony 3 : Bundle & Entités

Dans le premier tutoriel nous avons vu comment installer Symfony 3  en utilisant composer.Dans ce  tuto nous allons  générer le premier bundle de notre projet FoodCorner et ses entités.

Qu'est ce qu'un bundle?

Un bundle est un ensemble de fichiers et répertoires qui implémentent une ou plusieurs fonctionnalités.

Génerer  RestoBundle

Aller au dossier du projet FoodCorner,faire un  clic droit et ouvrir le terminal :


tuto-Symfony-bundle-entity





Tuto-Symfony-bundle-entity

     


Le bundle RestoBundle est bien généré:

Tuto-Symfony-bundle-entity


Il est placé sous le répertoire src/ du projet.

Tuto-Symfony-bundle-entity


Qu'est ce qu'une entité?

Avant de parler de l'entité il faut parler de l'ORM  qui est une technique créant une correspondance entre la base de donné relationnelle et la base de données orienté objet.C'est à dire par exemple pour un tableau voiture dans la base de données relationnelle il y 'aura une classe Voiture .L'ORM par défaut du framework Symfony c'est Doctrine.
Une entité c'est tout simplement un objet qui sera manipulé par doctrine et enregistré dans la base de données .Enfin les entités se sont des classes PHP.

Pour notre application FoodCorner nous aurons besoin des entités suivantes:
Plat :c'est le plat principal d'un menu ,cette entité a les attribut:
id de type integer , nom de type string , description de type text et  prix de type float.
Pour l'image on en parlera lorsqu'on va parler de l'upload d'un fichier .
Entrée , Dessert, Salade ont les même attributs que l'entité Plat.
Commande : Pour une commande  il est très important d'avoir un champ adresse et un champ numéro de téléphone .Il faut aussi le nom et le prénom du client et bien sur le contenu de la commande  , on peut aussi ajouter un champ email selon le choix de l'utilisateur s'il veut recevoir des emails de la part du restaurant  pour les nouveautés et les événements .Bref une entité Commande aura les champs suivant : id de type integer, nom de type string ,prenom de type string ,adresse de type string, telephone de type integer .
Enfin pour les reservations il nous faut une entité Reservation ayant comme attributs:
nom de type string  , prenom de type string, nbrPersonne de type integer , email de type string, telephone de type integer ,heure de type time et date de type date.

Genrer l'entité Plat







De la même façon seront générées les autre entités.Enfin comme vous voyez le répertoire entité est créé automatiquement et sous cet répertoire il y a les entités qu'on a générées.


Si on ouvre par exemple la classe  Dessert.php on va trouver tout les champs comme des attributs avec les getters et les setters pouc chaque attribut.

Voila donc on a généré notre premier bundle et toute les entités . Dans le prochain tutoriel nous allons parler de la partie vue du projet et installer le fameux Bootstrap.


Commentaires