Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 04-10-2012 11:59:41

katsuya
Nouveau membre
Date d'inscription: 14-12-2011
Messages: 6

Zend_route - Changement de module

Bonjour,
J'ai un petit problème avec les routes dans Zend Framework.

Mon Application comporte 4 Modules : Admin, Default, Annonceur et Partenaire.
Dans mon php.ini j'ai les routes suivantes :

Code:

;Resources.router.annonceur    
resources.router.routes.mod_annonceur.type = "Zend_Controller_Router_Route"
resources.router.routes.mod_annonceur.route = "annonceur/:controller/:action"
resources.router.routes.mod_annonceur.defaults.module = "annonceur"
resources.router.routes.mod_annonceur.defaults.controller = "espace-perso"
resources.router.routes.mod_annonceur.defaults.action = "index"
    

resources.router.routes.mod_annonceur_param1.type = "Zend_Controller_Router_Route"
resources.router.routes.mod_annonceur_param1.route = "annonceur/:controller/:action/:param1"
resources.router.routes.mod_annonceur_param1.defaults.module = "annonceur"
resources.router.routes.mod_annonceur_param1.defaults.controller = "index"
    
;Resources.router.partenaire
resources.router.routes.mod_partenaire.type = "Zend_Controller_Router_Route"
resources.router.routes.mod_partenaire.route = "partenaire/:controller/:action"
resources.router.routes.mod_partenaire.defaults.module = "annonceur"
resources.router.routes.mod_partenaire.defaults.controller = "espace-perso"
resources.router.routes.mod_partenaire.defaults.action = "index"
    
resources.router.routes.mod_partenaire_param1.route = "annonceur/:controller/:action/:param1"
resources.router.routes.mod_partenaire_param1.defaults.module = "partenaire"
resources.router.routes.mod_partenaire_param1.defaults.controller = "index"

(Les routes pour le modules default et admin fonctionnent nickel je ne les ai donc pas afficher ici).

Mon soucis se situe au niveau du module Annonceur, lorsque je fais un lien vers une action du module Annonceur, j'arrive sur une action comportant le même nom et se trouvant dans le même Controler mais dans le Module Partenaire.

Code:

<a href="<?php echo $this->url(array('
controller'=>'espace-perso',
'action'=>'detail-annonce', 
'param1' =>$pub['annonce_element_id'] )
,'mod_annonceur_param1', true); ?>">
<?php echo $pub['element_title'] ; ?> </a>

Pourquoi ce liens me renvoit'il vers une page se situant dans le Module Particulier ?

Si vous avez des idées, je suis preneuse.
Merci

Hors ligne

 

#2 04-10-2012 14:58:55

shadypierre
Membre
Date d'inscription: 24-03-2010
Messages: 617

Re: Zend_route - Changement de module

L'url généré a quel tête ?

Hors ligne

 

#3 04-10-2012 15:08:29

katsuya
Nouveau membre
Date d'inscription: 14-12-2011
Messages: 6

Re: Zend_route - Changement de module

L'url généré est la suivante : http://localhost/ocpt/annonceur/espace-perso/detail-annonce/21.

Cela semble correcte mais pourtant lorsque je récupère le nom du module via le code suivant :

Code:

[lang=php]$request = Zend_Controller_Front::getInstance()->getRequest();
$request->module;

le module utilisé devient partenaire après avoir cliquer sur ce lien.
merci

Dernière modification par katsuya (04-10-2012 15:09:38)

Hors ligne

 

#4 04-10-2012 20:46:11

shadypierre
Membre
Date d'inscription: 24-03-2010
Messages: 617

Re: Zend_route - Changement de module

Code:

resources.router.routes.mod_partenaire_param1.route = "annonceur/:controller/:action/:param1"

Cette route est identique à "mod_annonceur_param1" la route ne peut donc pas être déterminé.

Dernière modification par shadypierre (04-10-2012 20:46:27)

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