Bonjour,

Je rencontre actuellement un problème avec la console de CakePhp, en effet,
je peux créer une migration avec la commande :

bin\cake bake migration CreatePosts

Tout fonctionne même lorsque je rajoute des attributs,
Mais lorsque je lance la migration avec la commande :

bin\cake migrations migrate

Même s'il y a juste la création de la table sans attributs :

<?php

use Phinx\Migration\AbstractMigration;

class CreatePosts extends AbstractMigration
{
    /**
     * Change Method.
     *
     * More information on this method is available here:
     * http://docs.phinx.org/en/latest/migrations.html#the-change-method
     * @return void
     */
    public function change()
    {
        $table = $this->table('posts');
        $table->create();
    }
}

j'obtient l'erreur suivante :

Je cherche en vain depuis un bon moment, si quelqu'un à une idée.
Merci d'avance pour vos réponses.
Julien.

6 réponses


Havok
Réponse acceptée

Le problème soulevé était lié à une mise à jour de phinx qui a ajouté un nouvel argument sur le Shell. Sauf que le wrapper de CakePHP ne connaissait pas ce nouvel argument, d'où le bug.
Le bug nous a été rapporté assez rapidement et un fix a été fait.
Depuis la 1.2.2 du plugin Migrations, il n'y a plus de problèmes (sachant que la 1.3 du plugin a été released entretemps).

Release en question : https://github.com/cakephp/migrations/releases/tag/1.2.2

Quelle version de PHP utilise-tu en ligne de commande ?

Lyoru
Auteur

J'utilise la version fournie avec wamp soit la 5.5.
Phinx demande la version 5.3.2 minimum normalement (sur la doc).
Y a peut-être un module apache que je dois activer non ?

Peut être un module PHP, mais l'erreur ne dit rien de rien :(. Tu as regardé dans les issues github de cake et Phinx si quelqu'un a déjà rencontré le pb ?

Lyoru
Auteur

Ouais j'ai un peu regardé partout si quelqu'un avait eu le problème mais apparement pas. J'ai cherché d'ou venais l'erreur renvoyée, j'ai trouvé que l'erreur affichée venais du package de la console symphony et non cake/phinx.
Je vais essayer de creuser, changer de version PHP et/ou tester sur xamp ou un serveur maison peut-être que ça a un lien avec ça mais en tout cas j'ai essayé sur un autre pc j'ai le même problème donc bon ...
Malgrès ça le reste fonctionne (Bake all/model etc...) mais c'est dommage de ne pas pouvoir profiter des migrations.

Lyoru
Auteur

Pas de problèmes, merci de ta réponse Havok !
Effectivement le problème est résolu.