Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > MVC
MVC Forum de support sur le développement d'applications de type modèle-vue-contrôleur avec Zend Framework ainsi que vos questions sur les plugins, les helpers etc. Avant de poster -> Cours MVC, FAQ ZF Controller
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/09/2007, 08h44   #1
Rédacteur
 
Avatar de Yoshio
 
Homme
Inscription : septembre 2005
Messages : 1 741
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : Belgique

Informations forums :
Inscription : septembre 2005
Messages : 1 741
Points : 1 497
Points : 1 497
Par défaut Un sorte de preDispatch()

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
Yoshio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 13h51   #2
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
Faire un plugin
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 15h20   #3
Rédacteur
 
Avatar de Yoshio
 
Homme
Inscription : septembre 2005
Messages : 1 741
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : Belgique

Informations forums :
Inscription : septembre 2005
Messages : 1 741
Points : 1 497
Points : 1 497
On peux le charger avant l'exécution de tout les controller sans devoir le mettre dans chaque init() ?
Yoshio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 15h49   #4
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
Oui C'est le principe du plugin.
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 16h41   #5
Rédacteur
 
Avatar de Yoshio
 
Homme
Inscription : septembre 2005
Messages : 1 741
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : Belgique

Informations forums :
Inscription : septembre 2005
Messages : 1 741
Points : 1 497
Points : 1 497
tu as un lien vers un tuto/doc officiel ?
Yoshio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 17h15   #6
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
La doc officiel...C'est un bon début.....

http://framework.zend.com/manual/fr/...r.plugins.html
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 19h49   #7
Rédacteur
 
Avatar de Yoshio
 
Homme
Inscription : septembre 2005
Messages : 1 741
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : Belgique

Informations forums :
Inscription : septembre 2005
Messages : 1 741
Points : 1 497
Points : 1 497
Désolé de ne pas avoir eu envie de passer toutes les classes une par une ...
Yoshio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2007, 00h13   #8
Rédacteur
 
Avatar de Yoshio
 
Homme
Inscription : septembre 2005
Messages : 1 741
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : Belgique

Informations forums :
Inscription : septembre 2005
Messages : 1 741
Points : 1 497
Points : 1 497
Est ce qu'il y a un dossier spécial pour placer les plugin ?
Yoshio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2007, 09h38   #9
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
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 )
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2007, 09h25   #10
Expert Confirmé
 
Avatar de sekaijin
 
Femme
Urbaniste
Inscription : juillet 2004
Messages : 1 428
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 48
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Urbaniste
Secteur : Santé

Informations forums :
Inscription : juillet 2004
Messages : 1 428
Points : 2 815
Points : 2 815
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
sekaijin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2007, 09h39   #11
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
Citation:
il y a beaucoup plus simple
la dérivation
..Chacun sa notion de simplicité
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2007, 14h35   #12
Expert Confirmé
 
Avatar de sekaijin
 
Femme
Urbaniste
Inscription : juillet 2004
Messages : 1 428
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 48
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Urbaniste
Secteur : Santé

Informations forums :
Inscription : juillet 2004
Messages : 1 428
Points : 2 815
Points : 2 815
heu
Code :
1
2
3
4
5
6
7
class Myapp_Controller_Action extends Zend_Controller_Action {
}
 
 
class Exemple_Controller extends MyApp_Controller_Action {
....
}
et c'est fait

pour moi à par ne rien faire je ne vois pas la complexité

A+JYT
sekaijin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2007, 15h04   #13
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
Un plugin c'est pareil pour le coup...
Faut mettre ton code dans la méthode preDispatch() et voilà...
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2007, 21h29   #14
Rédacteur
 
Avatar de Yoteco
 
Alain Sahli
Ingénieur développement logiciels
Inscription : décembre 2004
Messages : 1 086
Détails du profil
Informations personnelles :
Nom : Alain Sahli
Âge : 25

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2004
Messages : 1 086
Points : 1 479
Points : 1 479
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.
Yoteco est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h14.


 
 
 
 
Partenaires

Hébergement Web