Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Re-bonjour,
Toujours inspiré de l'arborescence suivant :
/application /config (optional) /(module 1) /config (optional as needed) /controllers /models /views /(module 2) /controllers /models /views /(module n) /controllers /models /views
Après une grande bataille je peux acceder à l'url http://monsite/module1/ et l'action IndexAction faisant référence au fichier index.phtml est traité.
Cepandant, dans le controller se trouvant dans module1/controller/IndexController.php, j'ai la ligne suivante :
function init() { $this->view->baseUrl = $this->_request->getBaseUrl(); Zend_Loader::loadClass('Vehicule'); //!!!!!!!! NON TROUVE, se trouve à ../Models/Vehicule.php }
Le fichier faisant référence à loadClass('Vehicule'); se trouve dans /application/module1/Models/Vehicule.php. Il n'est pas trouvé. Si je le copie dans /application/default/Models je n'ai pas d'erreur. J'en conclus que le PATH des Models pour chaque Module n'existe pas.
Mon bootstrap contient ces lignes :
set_include_path('.' . PATH_SEPARATOR . './library' . PATH_SEPARATOR . './application/default/models/' . PATH_SEPARATOR . get_include_path()); .... $frontController->setControllerDirectory(array( 'default' => './application/default/controllers/', 'vehicule' => './application/vehicule/controllers/' ));
Comment ajouter pour chaque module, un chemin pour les Models ? Cest à dire que les controlleurs se trouvant dans /application/vehicule/Controllers/ feront référence aux Models se trouvant dans /application/vehicule/Models/ par l'appel Zend_Loader::loadClass('Vehicule'); ?
Dernière modification par whitespirit (11-02-2008 13:51:05)
Hors ligne
Bonjour,
Il faut ajouter les modèles de chaque module dans ton include path
set_include_path('.' . PATH_SEPARATOR . './library' . PATH_SEPARATOR . './application/default/models/' . PATH_SEPARATOR . './application/module1/models/' . PATH_SEPARATOR . './application/module2/models/' ... . PATH_SEPARATOR . get_include_path());
A+, Philippe
Hors ligne
Fantastique, merci
Hors ligne