1) Création du Projet
Atelier Symfony
Vérifier que l'emplacement du projet est visible par le serveur apache :
•
•
Pour linux, créer le projet sous le répertoire suivant: /var/www/html/
Pour windows, créer le projet sous le répertoire suivant: C:\wamp\www
1/14
Url du projet est : http://localhost/<nom_du_projet>/web/app_dev.php
Activer le framework Symfony2
2/14
Vérifier que l'application est fonctionnelle.
2) Configuration de l'application
Configuration de la base de donnée qui sera utilisée par l'application
•
•
url : root
password : (laisser vide)
3/14
3) Commandes avec Symfony
Il est possible d'exécuter des commandes avec symfony2.
1. Cliquer avec le bouton droit de la souris sur le projet
2. Sélectionner Symfony2
3. Run Command
4) Création d'un Bundle (Exemple : TNIsetBundle)
4/14
5/14
6/14
5) Création d'une entité
Lancer la commande doctrine:generate:entity
7/14
Publicité
(php5) qui a été créée
Etudiant
Remarquer la classe
<?php
namespace TN\IsetBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
- Etudiant
*
- @ORM\Table()
- @ORM\Entity
*/
class Etudiant {
/**
- @var integer
*
- @ORM\Column(name="id", type="integer")
- @ORM\Id
- @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
- @var string
*
- @ORM\Column(name="nom", type="string", length=20)
*/
private $nom;
8/14
/**
- @var string
*
- @ORM\Column(name="prenom", type="string", length=20)
*/
private $prenom;
Publicité
/**
- @var \DateTime
*
- @ORM\Column(name="date_naissance", type="date")
*/
private $dateNaissance;
/**
- Get id
*
- @return integer
*/
public function getId() {
return $this>id;
}
/**
- Set nom
*
- @param string $nom
- @return Etudiant
*/
public function setNom($nom) {
$this>nom = $nom;
return $this;
}
/**
- Get nom
*
- @return string
*/
public function getNom() {
return $this>nom;
}
Publicité
/**
- Set prenom
*
- @param string $prenom
- @return Etudiant
9/14
*/
public function setPrenom($prenom) {
$this>prenom = $prenom;
return $this;
}
/**
- Get prenom
*
- @return string
*/
public function getPrenom() {
return $this>prenom;
}
/**
- Set dateNaissance
*
- @param \DateTime $dateNaissance
- @return Etudiant
*/
public function setDateNaissance($dateNaissance) {
$this>dateNaissance = $dateNaissance;
return $this;
}
/**
- Get dateNaissance
*
- @return \DateTime
Publicité
*/
public function getDateNaissance() {
return $this>dateNaissance;
}
}
6) Créer la base de données et le schéma
Consulter l'url suivante:http://localhost/phpmyadmin. Elle permer d'administrer la base de
donnée MySQL.
Créer la base de donnée dsi2 (qui a été configuré au début) avec la commande
doctrine:database:create
10/14
Remarquer la création d'une nouvelle base de données avec PhpMyAdmin
Créer le schéma de la base de données (les tables de la base de donnée)
7) Exercice
1. Créer l'entité classe avec la commande doctrine:generate:entity. Les
attributs de l'entité sont
▪ libelle : String de 20 caractères
▪ niveau : Entier
2. Déduire la commande symfony qu'il faut exécuter pour appliquer les mises à jour au schéma
de la base de donnée
8) CRUD
11/14
12/14
Vérification des interfaces
13/14
9) Exercice
1. Créer les interfaces CRUD pour l'entité Classe.
2. Vérifier le bon fonctionnement des ces pages
14/14