2010-10-27 4 views
1

Ma structure d'application:Module Modèle non chargement

  • /application
    • /modèles
      • ShoppingCart.php
    • /modules
      • /commandes
        • /modèles
          • order.php

Je veux créer une application de module pour mon application.ini je mets:

resources.frontController.moduleDir ectory = APPLICATION_PATH "/ modules"

resources.modules [] = ""


Fondamentalement mon Application_Model_ShoppingCart pour ma principale application a besoin du Orders_Model_Order pour passer une commande:

class Application_Model_ShoppingCart 
{ 
static public $mCartId; 

function __construct() 
{ 
    #$this->OrderModel = new Orders_Model_Order(); 
    $this->SetCartId(); 
} 
} 

class Orders_Model_Order 
{ 
function __construct() 
{ 
    $this->PP_Session = Zend_Registry::get('PP_Session'); 

} 
} 

Mais je continue à recevoir une erreur fatale:

Erreur fatale: Classe 'O rders_Model_Order 'non trouvé dans .. /application/models/ShoppingCart.php sur la ligne 13

Je continue à essayer différentes choses mais il n'inclut toujours pas ce module avec l'autochargeur. Y a-t-il quelque chose que je devrais faire?

Merci d'avance.

Répondre

0

Deux solutions possibles.

Ajouter à application.ini:

autoloaderNamespaces[] = 'Application_' 

ou ajouter d'amorçage du module:

// /application/modules/orders/Boostrap.php 
class Orders_Bootstrap extends Zend_Application_Module_Bootstrap {} 

et mettre vos Order_Model_Order modèles:

/application/modules/orders/models/Order.php 
+0

Le premier travail na pas la solution mais une fois que j'ai ajouté une Orders_Bootstrap (que zf create module ne crée pas automatiquement) cela a fonctionné. Merci mon pote, je frappais totalement un mur sur celui-ci. –

+0

@marko C'est un peu compliqué, vous devez le créer manuellement.Je l'oublie toujours aussi. – takeshin

-1

Je pense que la classe doit être nommé:

class Application_Orders_Model_Order 
Questions connexes