Lorsque votre site Internet sous Symfony 2 est en ligne et que vous avez besoin d'apporter des modifications à des éléments du modèle de données (comme par exemple le type d’un champ, ajouter une valeur, modifier une table, …) en production, il existe une manière simple et sécurisé de le faire. On va pour cela utiliser le bundle « DoctrineMigrationsBundle ».
Au préalable, vous devrez installer le bundle préalablement cité. Celui-ci nous fournit deux commandes particulièrement utiles :
- php app/console doctrine:migrations:diff -> cette commande va générer un fichier « php » comprenant les différences entre la base de données et le modèle de données.
- php app/console doctrine:migrations:migrate -> les données seront migrées et le site en production à jour.
Remarque : dans le fichier généré, il est bien entendu possible d’ajouter ses propres requêtes SQL pour mettre à jour ce que l’on souhaite.
Lien utile :
http://symfony.com/doc/2.0/bundles/DoctrineMigrationsBundle/index.html