Bonjour,
Je ne parviens pas à indiquer le bon path à la méthode Doctrine_Core::generateModelsFromYaml
Arborescence du projet :
/config/global.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12/config -global.php /lib /model /config -schema.yml /vendor /doctrine ... /web -index.php -build.php
/build.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <?php //////////////////////////////////////////////////////// ///////////////////// paths //////////////////////////// //////////////////////////////////////////////////////// define('LIB_DIR', dirname(__FILE__).'/../lib/'); define('CFG_DIR', dirname(__FILE__).'/'); define('WEB_DIR', dirname(__FILE__).'/../web/'); //////////////////////////////////////////////////////// //////////////////// doctrine conf ///////////////////// //////////////////////////////////////////////////////// define('CFG_DB_DSN', 'mysql://root@localhost/parcvehicule'); require_once(LIB_DIR.'vendor/doctrine/Doctrine.php'); spl_autoload_register(array('Doctrine_Core', 'autoload')); spl_autoload_register(array('Doctrine_Core', 'modelsAutoload')); $manager = Doctrine_Manager::getInstance(); $conn = Doctrine_Manager::connection(CFG_DB_DSN, 'doctrine'); $manager->setAttribute(Doctrine_Core::ATTR_VALIDATE, Doctrine_Core::VALIDATE_ALL); $manager->setAttribute(Doctrine_Core::ATTR_AUTO_ACCESSOR_OVERRIDE, true); $manager->setAttribute(Doctrine_Core::ATTR_AUTOLOAD_TABLE_CLASSES, true); $manager->setAttribute(Doctrine_Core::ATTR_MODEL_LOADING, Doctrine_Core::MODEL_LOADING_CONSERVATIVE); Doctrine_Core::loadModels(LIB_DIR.'model/'); ?>
Et la sortie de build.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <?php require_once('config/global.php'); echo $_SERVER["PHP_SELF"]; // Si elle existe, supprimez la base existante. // Attention, cela vide totalement la base de données ! Doctrine_Core::dropDatabases(); // Création de la base (uniquement si elle n'EXISTE PAS) Doctrine_Core::createDatabases(); // Création des fichiers de modèle à partir du schema.yml // Si vous n'utilisez pas le Yaml, n'exécutez pas cette ligne ! Doctrine_Core::generateModelsFromYaml('/lib/model/config/schema.yml', '/lib/model/', array('generateTableClasses' => true)); // Création des tables Doctrine_Core::createTablesFromModels('/lib/model'); ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 /parcVehicule/build.php Fatal error: Uncaught exception 'Doctrine_Import_Exception' with message 'No yml schema found in /lib/model/config/schema.yml' in C:\Program Files (x86)\wamp\www\parcVehicule\lib\vendor\doctrine\Doctrine\Import\Schema.php:277 Stack trace: #0 C:\Program Files (x86)\wamp\www\parcVehicule\lib\vendor\doctrine\Doctrine\Core.php(883): Doctrine_Import_Schema->importSchema('/lib/model/conf...', 'yml', '/lib/model/') #1 C:\Program Files (x86)\wamp\www\parcVehicule\build.php(16): Doctrine_Core::generateModelsFromYaml('/lib/model/conf...', '/lib/model/', Array) #2 {main} thrown in C:\Program Files (x86)\wamp\www\parcVehicule\lib\vendor\doctrine\Doctrine\Import\Schema.php on line 277
Partager