Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 17-11-2008 10:28:52

etaque
Membre
Date d'inscription: 18-06-2007
Messages: 20

[Résolu] Zend_Controller / Modifier le suffixe "Controller"

Bonjour à tous,
Je cherche à modifier le suffixe des contrôleurs, ie passer de "IndexController" à "IndexWebController". Savez-vous quelque chose à ce sujet ?

Merci à vous
Emilien

Dernière modification par etaque (17-11-2008 12:56:33)

Hors ligne

 

#2 17-11-2008 10:57:34

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: [Résolu] Zend_Controller / Modifier le suffixe "Controller"

Hello,

Tu dois sous-classer le Dispatcher (méthode formatControllerName).

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#3 17-11-2008 12:56:00

etaque
Membre
Date d'inscription: 18-06-2007
Messages: 20

Re: [Résolu] Zend_Controller / Modifier le suffixe "Controller"

Au poil !
Merci.

Hors ligne

 

#4 17-11-2008 20:50:15

Julien
Membre
Date d'inscription: 16-03-2007
Messages: 501

Re: [Résolu] Zend_Controller / Modifier le suffixe "Controller"

Oui on a patché le dispatcheur récemment, pour que son interface soit plus claire vis à vis des méthodes à proposer.
Fais toi plaiz ;-)

Hors ligne

 

#5 28-11-2008 15:57:59

etaque
Membre
Date d'inscription: 18-06-2007
Messages: 20

Re: [Résolu] Zend_Controller / Modifier le suffixe "Controller"

Je remonte le sujet, car dans la suite de l'histoire je cherche à modifier le conportement de la méthode _translateSpec de ViewRenderer pour qu'il me vire le "-web" de "index-web/index.phtml".

Et le "-10" (nb de caractères de Controller) de cette ligne de code m'enbête (ligne 847 de ViewRenderer) :

Code:

$controller = substr($dispatcher->formatControllerName($request->getControllerName()), 0, -10);

Je suis preneur d'une solution élégante à ce problème, qui m'éviterait de surcharger le ViewRenderer, de c/c la méthode _translateSpec et de remplacer -10 par la bonne valeur...

merci smile

Hors ligne

 

#6 28-11-2008 16:34:09

etaque
Membre
Date d'inscription: 18-06-2007
Messages: 20

Re: [Résolu] Zend_Controller / Modifier le suffixe "Controller"

Visiblement j'ai pris le problème dans le mauvais sens, mon intention originelle était d'éviter des collisions de nom de classes avec des contrôleurs fonctionnels, je vais plutôt regarder du côté des modules.

Hors ligne

 

#7 28-11-2008 18:07:26

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: [Résolu] Zend_Controller / Modifier le suffixe "Controller"

Juste pour info :ca ne marche pas avec la methode setControllerName pour le 1er post ?
Pourquoi sous-classer le Dispatcher ?

Dernière modification par alien7 (28-11-2008 18:07:50)


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#8 03-12-2008 16:04:44

etaque
Membre
Date d'inscription: 18-06-2007
Messages: 20

Re: [Résolu] Zend_Controller / Modifier le suffixe "Controller"

Ca ne marchait pas car ça impactait le nom des vues cherchées par le viewRenderer. Ca imposait de se trimballer le suffixe dans les répertoires de vues.

Pour info, voici comment je m'en suis tiré :

Code:

class My_Controller_Dispatcher_BackOffice extends Zend_Controller_Dispatcher_Standard
{
    const PREFIX = 'MonNameSpace_';

    public function classToFilename($class)
    {
        return parent::classToFilename(substr($class, strlen(self::PREFIX)));
    }

    public function getControllerClass(Zend_Controller_Request_Abstract $request)
    {
        return self::PREFIX . parent::getControllerClass($request);
    }

}

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