2011-04-12 8 views
0

J'ai créé un plug-in qui est résident dans l'application/contrôleurs/plugin/view.php et ci-dessous est son contenuproblème avec le plugin dans zend framework

 
class Application_Controller_Plugin_View extends Zend_Controller_Plugin_Abstract 
{ 
    public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) 
    { 
     $frontController = Zend_Controller_Front::getInstance(); 
     $view = $frontController->getParam('bootstrap')->getResource('view'); 
     echo 'erace'; 
     exit; 
     $view->doctype('XHTML1_STRICT'); 

     $baseUrl = $request->getBaseUrl(); 
     if (defined('RUNNING_FROM_ROOT')) { 
      $baseUrl .= '/public'; 
      $frontController->setBaseUrl($baseUrl); 
     } 
     /* $view->headLink()->appendStylesheet($baseUrl . '/css/main.css'); 
     $view->headLink()->appendStylesheet($baseUrl . '/css/screen.css', 'screen'); 
     $view->headLink()->appendStylesheet($baseUrl . '/css/print.css', 'print');*/ 
    } 
} 

Je me suis inscrit ce plugin dans bootstrap comme suit:

 
protected function _initLayoutHelper() 
    { 

     $front = Zend_Controller_Front::getInstance(); 
     $front->registerPlugin(new Application_Controller_Plugin_View());  

    } 

mais son me donner une erreur comme

 
(!) Fatal error: Class 'Application_Controller_Plugin_View' not found in C:\wamp\www\saet_new\application\Bootstrap.php on line 42 

S'il vous plaît aidez-moi.

+0

Une raison spécifique pour laquelle vous utilisez un plugin pour cette ressource d'application de visualisation personnalisée (ou même simplement de configurer la ressource d'application de vue standard avec les paramètres définis dans application.ini)? –

Répondre

1

Je pense qu'il est causé parce que vous appelez Default_Application_Controller_Plugin_View et vous êtes le plugin est Application_Controller_Plugin_View.

Utilisez-vous des modules du tout? cela expliquerait pourquoi le Default_ serait là, bien que je crois que le préfixe n'est pas requis à moins que prefixDefaultModule ne soit défini.

2

Est-ce le plugin ici:

bibliothèque

/application/commande/plugin/view.php

?

code personnalisé appartient dans le dossier de la bibliothèque, à mon avis, et ce chemin est déjà défini dans index.php

enregistrer mon namespaces dans le bootstrap comme suit:

$autoLoader = Zend_Loader_Autoloader::getInstance(); 
$autoLoader->registerNamespace('Custom_'); 

Code bibliothèque peut ensuite être mis dans la bibliothèque de dossiers/personnalisée

+0

yes mon chemin de plugins est library/application/controllers/plugin/view.php – Jimit

+0

Essayez de changer l'application en autre chose, par ex. Personnalisé donc le chemin est library/custom/controllers/plugin/view.php et le nom de classe est Custom_Controllers_Plugin_View assurez-vous également que includePaths.library = APPLICATION_PATH "/../library" est défini dans le fichier .ini –

+0

J'ai changé de répertoire aussi, mais toujours la même erreur? aucune idée monsieur. – Jimit

Questions connexes