Getting Started with symfony

Installation du Projet

You are currently browsing
the website for symfony 1

Visit the Symfony2 website


About

You are currently reading "Getting Started with symfony" which is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported License license.

Tutorial Content

Master symfony

Be trained by SensioLabs experts (2 to 6 day sessions -- French or English).
trainings.sensiolabs.com

Books on symfony

Learn more about symfony with the official guides.
books.sensiolabs.com

L'audit Qualité par SensioLabs

200 points de contrôle de votre applicatif web.
audit.sensiolabs.com

Chapter Content

Création du projet

Vérification de l'installation

Configuration de la base de données

Création de l'application

Droits sur les répertoires structurés

symfony training
Be trained by symfony experts
Feb 21: Köln (Getting Started with Symfony2 - English)
Feb 27: Köln (Mastering Symfony2 - English)
Mar 05: Köln (Web Development with Symfony2 - Deutsch)
Mar 05: Montreal (Web Development with Symfony2 - English)
Mar 05: Montreal (Getting Started with Symfony2 - English)
and more...

Search


powered by google
You are currently browsing "Getting Started with symfony" in French for the 1.4 version - Switch to language:
Creative Commons License This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.

Dans symfony, les applications partageant le même modèle de données sont regroupés dans des projets. Pour la plupart des projets, vous avez deux applications différentes : un frontend et un backend.

Création du projet

Depuis le répertoire sfproject/, exécuter la tâche symfony generate:project pour créer le projet symfony:

$ php lib/vendor/symfony/data/bin/symfony generate:project PROJECT_NAME

Sur Windows:

c:\> php lib\vendor\symfony\data\bin\symfony generate:project PROJECT_NAME

La tâche generate:project génére la structure par défaut des répertoires et les fichiers nécessaires pour un projet symfony :

Répertoire Description
apps/ Accueille toutes les applications du projet
cache/ Les fichiers mis en cache par le framework
config/ Les fichiers de configuration du projet
data/ Les fichiers de données comme les jeux de données initiales
lib/ Les bibliothèque et les classes du projet
log/ Les fichiers log du framework
plugins/ Les plugins installés
test/ Les fichiers de test unitaire et fonctionnel
web/ Le répertoire racine Web (voir ci-dessous)

Pourquoi symfony génère autant de dossiers ? L'un des principaux avantages d'un framework full-stack consiste à normaliser les développements. Grâce à la structure par défaut des fichiers et des répertoires de symfony, tout développeur ayant une certaine connaissance de symfony peut prendre en charge la maintenance d'un projet symfony. En quelques minutes, il sera capable de parcourir le code, de corriger des bugs et d'ajouter de nouvelles fonctionnalités.

La tâche generate:project a également créé un raccourci symfony dans le répertoire racine du projet pour diminuer le nombre de caractères que vous allez écrire lors de l'exécution d'une tâche.

Ainsi, à partir de maintenant, au lieu d'utiliser le chemin complet pour le programme symfony, vous pouvez utiliser le raccourci symfony.

Vérification de l'installation

Maintenant que symfony est correctement installé, vérifiez la en utilisant la ligne de commande de symfony pour afficher la version de symfony (notez que le V est en majuscule) :

$ cd ../..
$ php lib/vendor/symfony/data/bin/symfony -V

Sur Windows:

c:\> cd ..\..
c:\> php lib\vendor\symfony\data\bin\symfony -V

L'option -V affiche également le chemin vers le répertoire d'installation de symfony, qui est stocké dans config/ProjectConfiguration.class.php.

Si le chemin de symfony est absolue (ce qui ne devrait pas l'être par défaut si vous suivez les instructions ci-dessus), changez-le de sorte qu'il soit lu comme l'exemple suivant pour une meilleure portabilité :

// config/ProjectConfiguration.class.php 
require_once dirname(__FILE__).'/../lib/vendor/symfony/lib/autoload/sfCoreAutoload.class.php'; 

De cette façon, vous pouvez déplacer le répertoire du projet n'importe où sur votre machine ou une autre, et cela fonctionnera bien.

Si vous êtes curieux de savoir ce que cet outil en ligne de commande peut faire pour vous, tapez symfony pour lister les options et les tâches disponibles :

$ php lib/vendor/symfony/data/bin/symfony

Sur Windows:

c:\> php lib\vendor\symfony\data\bin\symfony

La ligne de commande symfony est le meilleur ami du développeur. Il fournit de nombreux utilitaires qui permettent d'améliorer votre productivité sur les activités quotidiennes comme le vidage du cache, la génération de code, et bien plus encore.

Configuration de la base de données

Le framework Symfony supporte toutes les PDO-soutenus par des bases de données (MySQL, PostgreSQL, SQLite, Oracle, MSSQL, ...) hors de la boîte. Au sommet de PDO, symfony est livré avec deux outils ORM: Propel et Doctrine.

Lorsque vous créez un nouveau projet, Doctrine est activé par défaut. La configuration de la base de données employée par Doctrine est aussi simple en utilisant la tâche configure:database:

$ php symfony configure:database "mysql:host=localhost;dbname=dbname" root mYsEcret

La tâche configure:database comporte 3 arguments: le PDO DSN, le nom de l'utilisateur, et le mot de passe pour accéder à la base de données. Si vous n'avez pas besoin d'un mot de passe pour accéder à votre base de donnée sur le serveur de développement, omettez simplement le troisième argument.

Si vous souhaitez utiliser Propel au lieu de Doctrine, ajoutez --orm=Propel lors de la création du projet avec la tâche generate:project. Et si vous ne voulez pas utiliser un ORM, passer juste --orm=none.

Création de l'application

Maintenant, créez l'application frontend en exécutant la tâche generate:app :

$ php symfony generate:app frontend

Parce que le raccourci symfony est exécutable, les utilisateurs Unix peuvent remplacer toutes les occurrences de 'php symfony' par './symfony' à partir de maintenant.

Sur Windows vous pouvez copier le fichier 'symfony.bat' vers votre projet et utilisez 'symfony' à la place de 'php symfony' :

c:\> copy lib\vendor\symfony\data\bin\symfony.bat .

Basé sur le nom de l'application donné en argument, la tâche generate:app crée par défaut la structure du répertoire nécessaire à l'application sous le répertoire apps/frontend/ :

Répertoire Description
config/ Les fichiers de configuration de l'application
lib/ Les bibliothèques et les classes de l'application
modules/ Le code de l'application (MVC)
templates/ Les fichiers template globaux

Droits sur les répertoires structurés

Avant d'essayer d'accéder à votre projet nouvellement créé, vous devez configurer l'écriture sur les répertoires cache/ et log/ à des niveaux appropriés, afin que votre serveur web puisse écrire dedans :

$ chmod 777 cache/ log/
Configuration du serveur Web »
« Installation de symfony

Questions & Feedback

If you find a typo or an error, please register and open a ticket.

If you need support or have a technical question, please post to the official user mailing-list.