Journal du Net Développeur >  PHP >  Utiliser Symfony, framework PHP5

Utiliser Symfony, framework PHP5 > 2. Paramétrage

Précédente 3. Développement JavaScript et Ajax 
[1] : Exemple de fichier config/schema.yml :
  1. propel:
  2.   societe_projet:
  3.     _attributes: { phpName: Projet }
  4.     id:
  5.     nom:        varchar(255)
  6.     created_at:
  7.   weblog_comment:
  8.     _attributes: { phpName: Employe }
  9.     nom:        varchar(255)
  10.     prenom:     varchar(255)
  11.     anciennete: tinyint
  12.     created_at:
[2] : Les classes générées pour ce schéma :

/lib/model/om/BaseProjet.php
/lib/model/om/BaseProjetPeer.php
/lib/model/om/BaseEmploye.php
/lib/model/om/BaseEmployePeer.php
/lib/model/Projet.php
/lib/model/ProjetPeer.php
/lib/model/Employe.php
/lib/model/EmployePeer.php


[3] : Utilisation de la classe Projet :
  1. $larbin = new Employe();
  2. $larbin->setNom('Grüchtufruu');
  3. $larbin->setAnciennete(25);

Mise en place d'un projet
Toute la mise en place se fait ainsi à partir de Symfony, depuis la racine du projet. Une fois le projet mis en place, notamment le scaffolding, c'est-à-dire la liaison avec la base de données, le développement ira modifier les templates et la logique directement dans les dossiers et fichiers.

Tout comme pour Rails, les fichiers de configuration sont au format YAML. Notamment, le fichier databases.yml, situé dans le dossier config/, réalisera la liaison réelle entre Symfony et SQLite (par défaut), par le biais de Propel. Le schéma de la base de données doit être créé par Propel, à l'aide d'un fichier schema.yml qui définit les tables.

Ce fichier créé et placé dans le dossier config/, Symfony peut créer la base liée à l'application via l'opération symfony propel-build-model. Cela aura pour effet de créer non seulement les tables SQL, mais également les classes d'accès à la base de données. Les fichiers BaseXXX.php sont hérités par les XXX.php. On pourra ainsi modifier les XXX.php sans affecter les classes principales.

Les méthodes sont ensuite le reflet du schéma, avec get et set : setNom(), getNom(), setAnciennete()...

Précédente Retour au sommaire Page suivante 
Introduction | Installation | Paramétrage | Développement Ajax | En savoir plus...
 
|
Haut de page
Nos autres sites Société | Mentions légales | Contacts | Publicité | PA Emploi | Presse | Recrutement | Tous nos sites | Données personnelles
© Benchmark Group, 69/71 avenue Pierre Grenier. 92517 Boulogne Billancourt Cedex