Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 04-09-2008 10:23:14

nicolas2b
Nouveau membre
Date d'inscription: 21-04-2008
Messages: 9

[RESOLU] Problème de module, route et contrôleur

Bonjour,

Je rencontre sur un problème depuis quelques temps. Après l'avoir "repoussé", avoir cherché, je l'expose.

=>Brièvement : j'ai 2 modules (site et admin), je n'arrive pas à accéder aux contrôleurs du module admin (sans doute à cause de mes routes).

=>En detail :
j'ai donc deux modules : site et admin. "site" étant pour le front office et "admin" pour l'administration. Mes controleurs sont dans /application/[moduleX]/controllers/ (et les vues dans /application/[moduleX]/views/script/[controllerY]/[fichier.tpl] => le tpl est paramètre ok)

J'accède au différentes URL grace à des routes configurées. Elles fonctionnent bien pour le site, là où j'ai eu un problème, ça a été pour l'admin.
J'ai donc ajouté cette route là :

Code:

$route = new Zend_Controller_Router_Route( 'admin/*', array('module' => 'admin'));
$router->addRoute('admin', $route);

Elle semblait bien fonctionner (un appelle à http://localhost/admin/ chargait l'action index du controller index du module admin), mais j'ai voulu appeler http://localhost/admin/actualite/ajouter, et là c'est le drame, c'est le index/index qui est chargé ! sad
J'ai modifié la route en

Code:

$route = new Zend_Controller_Router_Route( 'admin/:controller/:action/*', array('module' => 'admin'));
$router->addRoute('admin', $route);

La conséquence est que je ne peux plus accéder aux contrôleurs du module admin. Le message d'erreur :

Code:

Page introuvable

retour
DEBUG INFOS :
Exception de type Zend_Controller_Dispatcher_Exception Invalid controller specified (actualite) envoy�e dans /Users/nicolas/SUPINFO/stage_XXXX/XXXX/site/application/lib/Zend/Controller/Dispatcher/Standard.php � la ligne 249
Stack Trace :

object(Zend_Controller_Dispatcher_Exception)#32 (6) {
  ["message:protected"] => string(40) "Invalid controller specified (actualite)"
  ["string:private"] => string(0) ""
  ["code:protected"] => int(0)
  ["file:protected"] => string(104) "/Users/nicolas/SUPINFO/stage_XXXX/XXXX/site/application/lib/Zend/Controller/Dispatcher/Standard.php"
  ["line:protected"] => int(249)
  ["trace:private"] => array(2) {
    [0] => array(6) {
      ["file"] => string(90) "/Users/nicolas/SUPINFO/stage_XXX/XXX/site/application/lib/Zend/Controller/Front.php"
      ["line"] => int(914)
      ["function"] => string(8) "dispatch"
      ["class"] => string(35) "Zend_Controller_Dispatcher_Standard"
      ["type"] => string(2) "->"
      ["args"] => array(2) {
        [0] => object(Zend_Controller_Request_Http)#30 (14) {
          ["_paramSources:protected"] => array(2) {
            [0] => string(4) "_GET"
            [1] => string(5) "_POST"
          }
          ["_requestUri:protected"] => string(24) "/admin/actualite/ajouter"
          ["_baseUrl:protected"] => string(0) ""
          ["_basePath:protected"] => NULL
          ["_pathInfo:protected"] => string(24) "/admin/actualite/ajouter"
          ["_params:protected"] => array(4) {
            ["controller"] => string(9) "actualite"
            ["action"] => string(7) "ajouter"
            ["module"] => string(5) "admin"
            ["error_handler"] => object(ArrayObject)#33 (3) {
              ["exception"] => object(Zend_Controller_Dispatcher_Exception)#32 (6) {
                ["message:protected"] => string(40) "Invalid controller specified (actualite)"
                ["string:private"] => string(0) ""
                ["code:protected"] => int(0)
                ["file:protected"] => string(104) "/Users/nicolas/SUPINFO/stage_XXXX/XXXX/site/application/lib/Zend/Controller/Dispatcher/Standard.php"
                ["line:protected"] => int(249)
                ["trace:private"] => array(2) {
                  [0] => array(6) {
                    ["file"] => string(90) "/Users/nicolas/SUPINFO/stage_XXX/XXX/site/application/lib/Zend/Controller/Front.php"
                    ["line"] => int(914)
                    ["function"] => string(8) "dispatch"
                    ["class"] => string(35) "Zend_Controller_Dispatcher_Standard"
                    ["type"] => string(2) "->"
                    ["args"] => array(2) {
                      [0] => object(Zend_Controller_Request_Http)#30 (14) {
                        ["_paramSources:protected"] => array(2) {
                          [0] => string(4) "_GET"
                          [1] => string(5) "_POST"
                        }
                        ["_requestUri:protected"] => string(24) "/admin/actualite/ajouter"
                        ["_baseUrl:protected"] => string(0) ""
                        ["_basePath:protected"] => NULL
                        ["_pathInfo:protected"] => string(24) "/admin/actualite/ajouter"
                        ["_params:protected"] => array(4) {
                          ["controller"] => string(9) "actualite"
                          ["action"] => string(7) "ajouter"
                          ["module"] => string(5) "admin"
                          ["error_handler"] => object(ArrayObject)#33 (3) {
                            ["exception"] => *RECURSION*
                            ["type"] => string(23) "EXCEPTION_NO_CONTROLLER"
                            ["request"] => object(Zend_Controller_Request_Http)#34 (14) {
                              ["_paramSources:protected"] => array(2) {
                                [0] => string(4) "_GET"
                                [1] => string(5) "_POST"
                              }
                              ["_requestUri:protected"] => string(24) "/admin/actualite/ajouter"
                              ["_baseUrl:protected"] => string(0) ""
                              ["_basePath:protected"] => NULL
                              ["_pathInfo:protected"] => string(24) "/admin/actualite/ajouter"
                              ["_params:protected"] => array(3) {
                                ["controller"] => string(9) "actualite"
                                ["action"] => string(7) "ajouter"
                                ["module"] => string(5) "admin"
                              }
                              ["_aliases:protected"] => array(0) {
                              }
                              ["_dispatched:protected"] => bool(true)
                              ["_module:protected"] => string(5) "admin"
                              ["_moduleKey:protected"] => string(6) "module"
                              ["_controller:protected"] => string(9) "actualite"
                              ["_controllerKey:protected"] => string(10) "controller"
                              ["_action:protected"] => string(7) "ajouter"
                              ["_actionKey:protected"] => string(6) "action"
                            }
                          }
                        }
                        ["_aliases:protected"] => array(0) {
                        }
                        ["_dispatched:protected"] => bool(true)
                        ["_module:protected"] => string(7) "default"
                        ["_moduleKey:protected"] => string(6) "module"
                        ["_controller:protected"] => string(5) "error"
                        ["_controllerKey:protected"] => string(10) "controller"
                        ["_action:protected"] => string(5) "error"
                        ["_actionKey:protected"] => string(6) "action"
                      }
                      [1] => object(Zend_Controller_Response_Http)#31 (8) {
                        ["_body:protected"] => array(1) {
                          ["error"] => string(69) "<p>Page introuvable</p><a href="javascript:history.back()">retour</a>"
                        }
                        ["_exceptions:protected"] => array(1) {
                          [0] => *RECURSION*
                        }
                        ["_headers:protected"] => array(0) {
                        }
                        ["_headersRaw:protected"] => array(0) {
                        }
                        ["_httpResponseCode:protected"] => int(404)
                        ["_isRedirect:protected"] => bool(false)
                        ["_renderExceptions:protected"] => bool(false)
                        ["headersSentThrowsException"] => bool(true)
                      }
                    }
                  }
                  [1] => array(6) {
                    ["file"] => string(65) "/Users/nicolas/SUPINFO/stage_XXXX/XXXX/site/htdocs/index.php"
                    ["line"] => int(173)
                    ["function"] => string(8) "dispatch"
                    ["class"] => string(21) "Zend_Controller_Front"
                    ["type"] => string(2) "->"
                    ["args"] => array(0) {
                    }
                  }
                }
              }
              ["type"] => string(23) "EXCEPTION_NO_CONTROLLER"
              ["request"] => object(Zend_Controller_Request_Http)#34 (14) {
                ["_paramSources:protected"] => array(2) {
                  [0] => string(4) "_GET"
                  [1] => string(5) "_POST"
                }
                ["_requestUri:protected"] => string(24) "/admin/actualite/ajouter"
                ["_baseUrl:protected"] => string(0) ""
                ["_basePath:protected"] => NULL
                ["_pathInfo:protected"] => string(24) "/admin/actualite/ajouter"
                ["_params:protected"] => array(3) {
                  ["controller"] => string(9) "actualite"
                  ["action"] => string(7) "ajouter"
                  ["module"] => string(5) "admin"
                }
                ["_aliases:protected"] => array(0) {
                }
                ["_dispatched:protected"] => bool(true)
                ["_module:protected"] => string(5) "admin"
                ["_moduleKey:protected"] => string(6) "module"
                ["_controller:protected"] => string(9) "actualite"
                ["_controllerKey:protected"] => string(10) "controller"
                ["_action:protected"] => string(7) "ajouter"
                ["_actionKey:protected"] => string(6) "action"
              }
            }
          }
          ["_aliases:protected"] => array(0) {
          }
          ["_dispatched:protected"] => bool(true)
          ["_module:protected"] => string(7) "default"
          ["_moduleKey:protected"] => string(6) "module"
          ["_controller:protected"] => string(5) "error"
          ["_controllerKey:protected"] => string(10) "controller"
          ["_action:protected"] => string(5) "error"
          ["_actionKey:protected"] => string(6) "action"
        }
        [1] => object(Zend_Controller_Response_Http)#31 (8) {
          ["_body:protected"] => array(1) {
            ["error"] => string(69) "<p>Page introuvable</p><a href="javascript:history.back()">retour</a>"
          }
          ["_exceptions:protected"] => array(1) {
            [0] => object(Zend_Controller_Dispatcher_Exception)#32 (6) {
              ["message:protected"] => string(40) "Invalid controller specified (actualite)"
              ["string:private"] => string(0) ""
              ["code:protected"] => int(0)
              ["file:protected"] => string(104) "/Users/nicolas/SUPINFO/stage_XXX/XXX/site/application/lib/Zend/Controller/Dispatcher/Standard.php"
              ["line:protected"] => int(249)
              ["trace:private"] => array(2) {
                [0] => array(6) {
                  ["file"] => string(90) "/Users/nicolas/SUPINFO/stage_XXX/XXXX/site/application/lib/Zend/Controller/Front.php"
                  ["line"] => int(914)
                  ["function"] => string(8) "dispatch"
                  ["class"] => string(35) "Zend_Controller_Dispatcher_Standard"
                  ["type"] => string(2) "->"
                  ["args"] => array(2) {
                    [0] => object(Zend_Controller_Request_Http)#30 (14) {
                      ["_paramSources:protected"] => array(2) {
                        [0] => string(4) "_GET"
                        [1] => string(5) "_POST"
                      }
                      ["_requestUri:protected"] => string(24) "/admin/actualite/ajouter"
                      ["_baseUrl:protected"] => string(0) ""
                      ["_basePath:protected"] => NULL
                      ["_pathInfo:protected"] => string(24) "/admin/actualite/ajouter"
                      ["_params:protected"] => array(4) {
                        ["controller"] => string(9) "actualite"
                        ["action"] => string(7) "ajouter"
                        ["module"] => string(5) "admin"
                        ["error_handler"] => object(ArrayObject)#33 (3) {
                          ["exception"] => *RECURSION*
                          ["type"] => string(23) "EXCEPTION_NO_CONTROLLER"
                          ["request"] => object(Zend_Controller_Request_Http)#34 (14) {
                            ["_paramSources:protected"] => array(2) {
                              [0] => string(4) "_GET"
                              [1] => string(5) "_POST"
                            }
                            ["_requestUri:protected"] => string(24) "/admin/actualite/ajouter"
                            ["_baseUrl:protected"] => string(0) ""
                            ["_basePath:protected"] => NULL
                            ["_pathInfo:protected"] => string(24) "/admin/actualite/ajouter"
                            ["_params:protected"] => array(3) {
                              ["controller"] => string(9) "actualite"
                              ["action"] => string(7) "ajouter"
                              ["module"] => string(5) "admin"
                            }
                            ["_aliases:protected"] => array(0) {
                            }
                            ["_dispatched:protected"] => bool(true)
                            ["_module:protected"] => string(5) "admin"
                            ["_moduleKey:protected"] => string(6) "module"
                            ["_controller:protected"] => string(9) "actualite"
                            ["_controllerKey:protected"] => string(10) "controller"
                            ["_action:protected"] => string(7) "ajouter"
                            ["_actionKey:protected"] => string(6) "action"
                          }
                        }
                      }
                      ["_aliases:protected"] => array(0) {
                      }
                      ["_dispatched:protected"] => bool(true)
                      ["_module:protected"] => string(7) "default"
                      ["_moduleKey:protected"] => string(6) "module"
                      ["_controller:protected"] => string(5) "error"
                      ["_controllerKey:protected"] => string(10) "controller"
                      ["_action:protected"] => string(5) "error"
                      ["_actionKey:protected"] => string(6) "action"
                    }
                    [1] => object(Zend_Controller_Response_Http)#31 (8) {
                      ["_body:protected"] => array(1) {
                        ["error"] => string(69) "<p>Page introuvable</p><a href="javascript:history.back()">retour</a>"
                      }
                      ["_exceptions:protected"] => array(1) {
                        [0] => *RECURSION*
                      }
                      ["_headers:protected"] => array(0) {
                      }
                      ["_headersRaw:protected"] => array(0) {
                      }
                      ["_httpResponseCode:protected"] => int(404)
                      ["_isRedirect:protected"] => bool(false)
                      ["_renderExceptions:protected"] => bool(false)
                      ["headersSentThrowsException"] => bool(true)
                    }
                  }
                }
                [1] => array(6) {
                  ["file"] => string(65) "/Users/nicolas/SUPINFO/stage_XXX/XXXX/site/htdocs/index.php"
                  ["line"] => int(173)
                  ["function"] => string(8) "dispatch"
                  ["class"] => string(21) "Zend_Controller_Front"
                  ["type"] => string(2) "->"
                  ["args"] => array(0) {
                  }
                }
              }
            }
          }
          ["_headers:protected"] => array(0) {
          }
          ["_headersRaw:protected"] => array(0) {
          }
          ["_httpResponseCode:protected"] => int(404)
          ["_isRedirect:protected"] => bool(false)
          ["_renderExceptions:protected"] => bool(false)
          ["headersSentThrowsException"] => bool(true)
        }
      }
    }
    [1] => array(6) {
      ["file"] => string(65) "/Users/nicolas/SUPINFO/stage_XXX/XXX/site/htdocs/index.php"
      ["line"] => int(173)
      ["function"] => string(8) "dispatch"
      ["class"] => string(21) "Zend_Controller_Front"
      ["type"] => string(2) "->"
      ["args"] => array(0) {
      }
    }
  }
}

Voila mon fichier index.php (le bootstrap je crois):

Code:

<?

error_reporting(E_ALL|E_STRICT);

date_default_timezone_set('Europe/Paris');
ini_set('include_path', '.'
    . PATH_SEPARATOR . '../application/lib'
    . PATH_SEPARATOR . '../application/modules/site/models/'
    . PATH_SEPARATOR . '../application/modules/admin/models/'
    . PATH_SEPARATOR . ini_get('include_path') );

include "Zend/Loader.php";
Zend_Loader::loadClass('Zend_Cache');
Zend_Loader::loadClass('Zend_Db_Table_Abstract');

Zend_Loader::loadClass('Zend_Registry');
Zend_Loader::loadClass('Zend_Log');
Zend_Loader::loadClass('Zend_Log_Writer_Stream');

$writer = new Zend_Log_Writer_Stream('../application/log/fichier_log.log');
$logger = new Zend_Log($writer);

Zend_Registry::set('logger',$logger);

//Zend_Log::registerLogger(new Zend_Log_Writer_Stream('../application/log/fichier_log.log'));
//Zend_Log::setMessagePrefix('['. date('Y-m-d G:i') . '] ' . $_SERVER['REMOTE_ADDR'] . ': ');


/*
//INITIALISAION DU CACHE
//A METTRE EN PRODUCTION
$logger->log("Debut creation du cache", Zend_Log::DEBUG);
$cache_bdd = Zend_Cache::factory('Core', 'File', array('lifetime'=>7200), array('cache_dir' => '../application/var/cache/'));
Zend_Db_Table_Abstract::setDefaultMetadataCache($cache_bdd);


$frontendOptions = array(
   'lifetime' => 7200,
   'debug_header' => true, // for debugging
   'regexps' => array(
           '^/$' => array('cache' => true),
           '^/contact' => array('cache' => true),
           '^/credits' => array('cache' => true),
           '^/aide' => array('cache' => true),
           '^/droit' => array('cache' => true),
           /*'^/article/' => array('cache' => false), // we don't cache the ArticleController...
           '^/article/view/' => array(              // ...but we cache the "view" action of
               'cache' => true,                     // this ArticleController
               'cache_with_post_variables' => true,    // and we cache even there are some variables in $_POST
               'make_id_with_post_variables' => true,   // (but the cache will be dependent of the $_POST array)
           )/
   )
);
$backendOptions = array(
    'cache_dir' => '../application/var/cache/'
);

$cache = Zend_Cache::factory('Page', 'File', $frontendOptions, $backendOptions);
$logger->log("Fin creation du cache", Zend_Log::DEBUG);
$logger->log("Demarrage du cache", Zend_Log::DEBUG);
$cache->start();
*/


Zend_Loader::loadClass('Zend_Auth');
Zend_Loader::loadClass('Zend_Config_Ini');
Zend_Loader::loadClass('Zend_Controller_Front');
Zend_Loader::loadClass('Zend_Controller_Router_Rewrite');
Zend_Loader::loadClass('Zend_Controller_Router_Route');
Zend_Loader::loadClass('Zend_Controller_Router_Route_Regex');
Zend_Loader::loadClass('Zend_Controller_Router_Route_Module');
Zend_Loader::loadClass('Zend_Controller_Router_Route_Static');
Zend_Loader::loadClass('Zend_Db');
Zend_Loader::loadClass('Zend_Db_Table_Row_Abstract');
Zend_Loader::loadClass('Zend_Debug');
Zend_Loader::loadClass('Zend_View');

Zend_Loader::loadClass('Membre');
Zend_Loader::loadClass('Membres');
Zend_Loader::loadClass('MembresEvenements');
Zend_Loader::loadClass('Evenement');
Zend_Loader::loadClass('Evenements');
Zend_Loader::loadClass('Document');
Zend_Loader::loadClass('Documents');
Zend_Loader::loadClass('DocumentsEvenements');
//Zend_Loader::loadClass('Groupe');
///Zend_Loader::loadClass('Groupes');
//Zend_Loader::loadClass('MembresGroupes');

$logger->log("Chargement de la configuration", Zend_Log::DEBUG);
$config = new Zend_Config_Ini('../application/config/config.ini', 'dev_local');
$logger->log("Initialisation de la BDD", Zend_Log::DEBUG);
$db = Zend_Db::factory($config->database->adapter, $config->database->params->toArray());
Zend_Db_Table_Abstract::setDefaultAdapter($db);
Zend_Registry::set('db',$db);

$front = Zend_Controller_Front::getInstance();

// Set several module directories at once:
$front->setControllerDirectory(array(
    'admin'        => '../application/modules/admin/controllers',
    'default'    => '../application/modules/site/controllers'
));


$router = $front->getRouter(); // returns a rewrite router by default
$router->addRoute('default', new Zend_Controller_Router_Route_Module(array('controller' => 'site', 'action' => 'index')) );


//route pour le profil d'un membre. URL de la forme 'membre/' suivi du login du membre
$route = new Zend_Controller_Router_Route( 'admin/:controller/:action/*', array('module' => 'admin'));
$router->addRoute('admin', $route);

//route dynamique pour les evenements
$route = new Zend_Controller_Router_Route( 'evenement/:id', array('controller' => 'evenement', 'action' => 'detail'), array('id' => '\d+'));
$router->addRoute('detailEvenement', $route);

//route pour le profil d'un membre. URL de la forme 'membre/' suivi du login du membre
//$route = new Zend_Controller_Router_Route( 'membre/:nom', array('controller' => 'membre', 'action' => 'profil'));
//$router->addRoute('profilMembre', $route);
$route = new Zend_Controller_Router_Route( 'membre/:id', array('controller' => 'membre', 'action' => 'profil'), array('id'=>'\d+'));
$router->addRoute('profilMembre', $route);

//route dynamique pour l'interface de gestion
$route = new Zend_Controller_Router_Route('gestion/*', array('controller' => 'membre', 'action' => 'gestion'));
$router->addRoute('gestion', $route);

//route statique pour le formulaire de connexion
$route = new Zend_Controller_Router_Route_Static('connexion', array('controller' => 'auth', 'action' => 'login'));
$router->addRoute('connexion', $route);

//route statique pour la deconnexion
$route = new Zend_Controller_Router_Route_Static('deconnexion', array('controller' => 'auth', 'action' => 'logout'));
$router->addRoute('deconnexion', $route);

//route statique pour le formulaire d'enregistrement
$route = new Zend_Controller_Router_Route_Static('inscription', array('controller' => 'auth', 'action' => 'register'));
$router->addRoute('inscription', $route);

//route statique pour le formulaire de contact
$route = new Zend_Controller_Router_Route_Static('contact', array('controller' => 'site', 'action' => 'contact'));
$router->addRoute('contact', $route);

//route statique pour les credis
$route = new Zend_Controller_Router_Route_Static('credits', array('controller' => 'site', 'action' => 'credits'));
$router->addRoute('credits', $route);

//route statique pour la page d'aide
$route = new Zend_Controller_Router_Route_Static('aide', array('controller' => 'site', 'action' => 'help'));
$router->addRoute('aide', $route);

//route statique pour la page d'accueil
$route = new Zend_Controller_Router_Route_Static('accueil', array('controller' => 'site', 'action' => 'index'));
$router->addRoute('accueil', $route);

//route statique pour la page legal
$route = new Zend_Controller_Router_Route_Static('droit', array('controller' => 'site', 'action' => 'legals'));
$router->addRoute('droit', $route);

//route statique pour le formulaire de redaction
//$router->addRoute('annonce/rediger', new Zend_Controller_Router_Route_Static( 'annonce/rediger', array('controller' => 'annonce', 'action' => 'new')) );

$logger->log("Route cree", Zend_Log::DEBUG);

define('ROOT_URL', 'http://XXXX/');

$view = new Zend_View();
$viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
$viewRenderer->setView($view)->setViewSuffix('tpl');

$logger->log("Dispatching", Zend_Log::DEBUG);

$front->dispatch();

Merci d'avance de votre aide.

Dernière modification par nicolas2b (04-09-2008 13:37:08)

Hors ligne

 

#2 04-09-2008 10:31:26

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: [RESOLU] Problème de module, route et contrôleur

Bonjour,

Comment définis tu tes controlleurs dans le module Admin ? Tu dois ajouter le nom du module devant le nom du controller dans le nom de ta classe.

Code:

class Admin_IndexController extends Zend_Controller_Action {
...
}

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#3 04-09-2008 10:39:03

nicolas2b
Nouveau membre
Date d'inscription: 21-04-2008
Messages: 9

Re: [RESOLU] Problème de module, route et contrôleur

Salut,

C'est effectivement ce que j'ai fais (après une première erreur) et j'ai toujours le même problème (et le même message)
voila pour info mes contrôleur :
-Admin_IndexController
-Admin_ActualiteController
-Admin_GroupeController
-Admin_MembreController
...

Le nom du module (Admin) doit bien être ds le nom de _fichier_ aussi ?

Hors ligne

 

#4 04-09-2008 11:08:54

Papytruc
Nouveau membre
Date d'inscription: 26-06-2008
Messages: 3

Re: [RESOLU] Problème de module, route et contrôleur

Moi je ne le mets pas ( le Admin_ ) devant mes noms de fichiers et cela fonctionne.

Hors ligne

 

#5 04-09-2008 12:11:00

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: [RESOLU] Problème de module, route et contrôleur

Non, il ne faut pas le mettre dans le nom de fichier, uniquement dans le nom de la classe (c'est pour éviter des conflts de noms de classe... c'est pas super, mais ils n'avaient pas trop le choix coté ZF...)

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#6 04-09-2008 12:20:05

nicolas2b
Nouveau membre
Date d'inscription: 21-04-2008
Messages: 9

Re: [RESOLU] Problème de module, route et contrôleur

Merci Papytruc, c'était cela le problème.
Donc le nom du module doit être dans le nom de classe mais pas de fichier.

EDIT : merci a Philippe aussi smile

Dernière modification par nicolas2b (04-09-2008 16:07:53)

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages