Skip to content

french Getting Started

Manuel Hervo edited this page Sep 10, 2012 · 14 revisions

Démarrage en autant d'étapes que possible.

  • Récuperer le code sur GitHub (git clone or a zip)
  • Vérifier les exigences
    • PHP 5.3
    • Optionel, le [framework PHPUnit] (http://phpunit.de/ "PHPUnit framework") si vous souhaitez lancer les tests unitaires.
    • L'extension PDO_MySQL

(Toutes les commandes suivantes suppose que vous avez changé votre répertoire de travail à la racine du framework). TODO Les fichiers binaires pourront se trouver n'importe où sur le système.

  • Modifier config/application.ini et renseignez les informations nécessaires au bon fonctionnement de Phigrate.
  • Modifiez config/database.ini et entrer les informations appropriées pour votre base de données.

Pour plus d'explications, voir la page configuration.

  • Toutes les commandes dans le framework sont préfixées avec phigrate suivi par le nom de la tâche et les arguments additionnels. Ceci suppose que votre binaire php se trouve dans votre $PATH.
    • Exemples:
    phigrate db:setup

    phigrate db:version

    phigrate db:migrate
  • Initialiser votre base de données avec la table schema_migrations afin qu'elle puisse commencer le suivi de la version courante. Cela doit être fait avec la commande suivante:
    phigrate db:setup 

Créer votre premier fichier migration

Exécutez la commande suivante:

    phigrate-generate create_users_table

Le second argument est spécifique à l'utilisateur et est une liste de mots délimitée par des soulignés(undescores) qui décrivent votre migration en termes humainement compréhensible. Les exemples pourraient être add_index_to_cities_table ou create_orders_table ou rename_expertise_column_in_users, etc... Attention Le nom de la classe étant créé à partir de ce nom, vous ne pouvez pas avoir deux fichiers migration avec les mêmes termes. Une erreur vous sera retournée si tel est le cas.

Chaque fois que le générateur est lancé, il crée un fichier avec comme préfix la date actuelle (YYYMMDDHHmmss). Par exemple, la commande ci-dessus pourrait générer un fichier tel que db/migrate/20101103105103_CreateUsersTable.php. Le nom du fichier (et le nom de la classe) est une chaîne CamelCase le même argument que vous avez passé à la commande.

Ouvrez ensuite le fichier généré dans votre éditeur de texte préféré.

La classe a deux méthodes, up() et down(). La méthode up() est là pour effectuer les actions à mener lorsque vous exécutez les migrations vers le haut de la chaîne des migrations, toutes les migrations qui n'ont pas été exécutées depuis la dernière version dans la base de données, qui sont basées dans l'ordre croissant des timestamp. La méthode down() est là pour effectuer les actions qui doivent être effectuées lorsque vous descendez dans la chaîne. Dans la plupart des cas, la méthode down() vous permet de défaire ce que vous avez fait avec la méthode up(). Si vous créez une nouvelle table dans la méthode up(), alors vous souhaiterez la supprimer dans la méthode down().

Dans un monde parfait, vous seriez en mesure d'émettre de façon transparente les appels de migrations haut et bas et votre SGBDR serait en parfaite synchronisation. Autrement dit, vous ne voulez pas créer une table dans une méthode up() donnée, alors ne la supprimez pas parce que si vous vouliez migrer totalement vers le haut / bas, alors votre SGBDR ne vous permettrait pas de créer la même table deux fois.

Executer vos migrations

    phigrate db:migrate

Cette commande va exécuter toutes les migrations disponibles, vous informer sur la sortie standard et mettre à jour votre table d'information de schéma avec la version appropriée.

Pour un exemple complet de migrations en action, voir des [[exemples concrets|french Complete Examples]].

Clone this wiki locally