Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 12-08-2009 12:13:19

riky''
Nouveau membre
Date d'inscription: 09-07-2009
Messages: 6

[1.8] Bootstrap + Route + Accès aux controleurs

Bonjour,

J'essaye de mettre en place mes routes et j'ai vu qu'il fallait les initialiser dans le bootstrap.
Par contre j'ai besoin d'accéder à une action d'un module car les routes sont écrites dans ma BDD, or je n'arrive pas à instancier une classe dans le bootstrap.

Comment peut-on procéder afin d'accéder à une action d'un contrôleur dans le bootstrap ?
Ou bien comment puis je définir mes routes autre part ?

Merci

Hors ligne

 

#2 12-08-2009 13:41:10

keilnoth
Membre
Date d'inscription: 30-08-2008
Messages: 128
Site web

Re: [1.8] Bootstrap + Route + Accès aux controleurs

Tes routes doivent être définies, à mon avis, dans un plugin. Le plugin appelé sur le routeStartup(). Regarde la doc sur Zend_Controller_Plugin_Abstract.

Ensuite tu récupères ta DB depuis Zend_Registry ou alors tu instancies ta table directement dans ton plugin. Mais tu devrais mettre tout ça en cache parce que c'est très lourd comme manière de faire.

Si à n'importe quel moment, tu as besoin d'accéder à une action d'un contrôleur ailleurs que dans le contrôleur lui-même alors c'est que tu es devant une grosse erreur de conception ou une incompréhension. wink


Quelques tutoriaux Zend Framework !

Hors ligne

 

#3 12-08-2009 14:00:49

riky''
Nouveau membre
Date d'inscription: 09-07-2009
Messages: 6

Re: [1.8] Bootstrap + Route + Accès aux controleurs

Merci pour ta réponse.
En fait au départ, j'avais fait un formulaire pour créer une entrée dans un menu (stockée dans une BDD) et j'utilise ensuite Zend_Navigation pour créer mon arborescence (à partir donc des données de la BDD). Donc dans le formulaire j'avais prévu des champs module, controller, action, params, route....

Mes routes sont "dynamiques", elles varient selon ce qu'il y a dans mon arborescence et je ne peux donc pas les rentrer à la main dans un fichier.ini.

De même l'arborescence créée via Zend_Navigation devrait elle aussi être disponible dès le lancement de l'application (dans le bootstrap ??)

Tout ça peut donc être réglé par un plugin alors ? Je vais regarder la doc de plus près

EDIT : en fait je voudrais plutôt savoir s'il est possible d'instancier une classe dans le bootstrap. J'ai un module navigation et un controleur menu qui s'occupe de gérer les menus. J'ai dedans une action qui crée un container via Zend_Navigation et c'est cette action que j'aimerais lancer dès le chargement de l'application. De plus cette action "récupère" ce qu'il y a dans la BDD ce qui me permettrais de faire mes addroute() directement.

Dernière modification par riky'' (12-08-2009 14:49:09)

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