Utiliser Propel avec Symfony 1.4

Après avoir téléchargé le sandbox de la version 1.4 de Symfony, impossible de générer mon modèle avec Propel : Task “propel-build-model” is not defined.

En faisant php symphony list, je constate que les directives pour doctrines sont accessibles, mais rien pour propel.

Pour résoudre ce problème : dans /config/ProjectConfiguration.class.php, faire en sorte que la fonction setup() soit ainsi :

public function setup()
{
//enlever l'activation de Doctrine, mettre à la place
$this->enablePlugins('sfPropelPlugin');
}

Mon fichier schema.yml doit être à la racine de /config, sinon, cela fait l’erreur suivante :  You must create a schema.yml or schema.xml file.

Ensuite j’avais l’erreur : lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/vendor/propel-generator/build.xml:48:16: Missing configuration file.
Cette erreur se résout en créant un fichier propel.ini dans /config.

Ensuite, j’avais l’erreur suivante : build-propel.xml:461:22: Execution of the target buildfile failed. Aborting.

Pour résoudre cette erreur, il faut mettre dans propel.ini les lignes suivantes (et uniquement les lignes suivantes) :


propel.targetPackage       = lib.model

propel.packageObjectModel  = true

propel.project             = monprojet

propel.database            = mysql

propel.database.driver     = mysql

propel.database.url        = mysql:dbname=mabase;host=localhost

propel.database.creole.url = ${propel.database.url}

propel.database.user       = root

propel.database.password   = pass

propel.database.encoding   = utf8

J’ai enfin pu générer mon modèle : php symfony propel:build –model


Réagir

1 Comments.

  1. Salut,

    Je m’y suis aussi cassé les dents aussi en essayant de partir d’une sandbox 1.4. Ça marche sans problème avec la sandbox 1.3 mais pas avec la sandox 1.4 ! Pour cette version il vaut donc mieux repartir d’un “generate:project myPropelProject –orm=Propel”.

    ++ COil

Réagir

[ Ctrl + Enter ]