|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
![]() ![]() Inscription : septembre 2005 Messages : 1 741 ![]() |
Bonjour,
Est ce qu'il y a moyen de faire une sorte de preDispatch() commun a tous les controllers, donc l'écrire qu'une et une seule fois a un endroit et qui soit appelé avant chaque page. Yoshio |
|
|
00
|
|
|
#2 |
|
Membre éclairé
![]() |
Faire un plugin
|
|
00
|
|
|
#3 |
![]() ![]() Inscription : septembre 2005 Messages : 1 741 ![]() |
On peux le charger avant l'exécution de tout les controller sans devoir le mettre dans chaque init() ?
|
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() |
Oui
|
|
00
|
|
|
#5 |
![]() ![]() Inscription : septembre 2005 Messages : 1 741 ![]() |
tu as un lien vers un tuto/doc officiel ?
|
|
|
00
|
|
|
#6 |
|
Membre éclairé
![]() |
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : septembre 2005 Messages : 1 741 ![]() |
Désolé de ne pas avoir eu envie de passer toutes les classes une par une ...
|
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : septembre 2005 Messages : 1 741 ![]() |
Est ce qu'il y a un dossier spécial pour placer les plugin ?
|
|
|
00
|
|
|
#9 |
|
Membre éclairé
![]() |
Non pas spécialement.
Personellement j'ai un répertoires "libraires" qui contient le repértoire du Zend Framework ( "Zend" ) et j'utilise la même convetion que le framework pour stocker mes classses, mais dans un repertoire "My" par exemple ( My_Plugin_Auth => /libraries/My/Plugin/Auth.php ) |
|
00
|
|
|
#10 |
|
Expert Confirmé
![]() ![]() Urbaniste Inscription : juillet 2004 Messages : 1 428 ![]() |
il y a beaucoup plus simple
la dérivation par défaut on dérive ne contrôleur de Zend_Controller_Action on a donc Zen_Controller_Action<-My_Controller il suffit d'écrire une classe Myapp_Controller_Action qui dérive de Zen_Controller_Action et de fair dériver ses contrôleurs de Myapp_Controller_Action ainsi : Zen_Controller_Action<-Myapp_Controller_Action<-My_Controller tout ce qui est commun à tous tes contrôleurs peut alors êtres mis dans Myapp_Controller_Action tu peux aussi Classifier tes contrôleurs en faisant un hérarchie Zen_Controller_Action<-Myapp_Controller_Action<-Index_Controller Zen_Controller_Action<-Myapp_Controller_Action<-Myadmin_Controller_Action<-Useradmin_Controller Zen_Controller_Action<-Myapp_Controller_Action<-Myadmin_Controller_Action<-Groupadmin_Controller Zen_Controller_Action<-Myapp_Controller_Action<-Myuser_Controller_Action<-Tools_Controller Myapp_Controller_Action détient alors tout ce qui est commun à toute l'application Myadmin_Controller_Action tout ce qui est commun à tous les contrôleur d'administration Myuser_Controller_Action ce qui est commun au contrôleurs d'usage de l'application. A+JYT |
|
|
00
|
|
|
#11 | |
|
Membre éclairé
![]() |
Citation:
|
|
|
00
|
|
|
#12 | ||
|
Expert Confirmé
![]() ![]() Urbaniste Inscription : juillet 2004 Messages : 1 428 ![]() |
heu
Code :
pour moi à par ne rien faire je ne vois pas la complexité A+JYT |
||
|
|
00
|
|
|
#13 |
|
Membre éclairé
![]() |
Un plugin c'est pareil pour le coup...
Faut mettre ton code dans la méthode preDispatch() et voilà... |
|
00
|
|
|
#14 |
![]() ![]() Alain Sahli Ingénieur développement logiciels Inscription : décembre 2004 Messages : 1 086 ![]() |
Moi je suis partis sur le principe de l'héritage et c'est après coup que j'ai vu que l'on pouvait faire des plugins.
Mais comment doit-on faire si je veux que certains contrôleur n'utilise pas le plugin? Avec l'héritage c'étais facile, je ne les faisais pas hériter.
__________________
Blog - Mon espace developpez - Vous voulez un site internet ? eZ Publish Certified developer |
|
00
|
Copyright © 2000-2012 - www.developpez.com