IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Respect du MVC ? [2.x]


Sujet :

Symfony PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 98
    Points : 163
    Points
    163
    Par défaut Respect du MVC ?
    Bonjour,
    J'ai un controller et j'ai besoin d'une méthode d'un autre controller, j'ai donc définis mon controller comme un service puis j'apelle le service depuis mon controller, sauf que c'est une mauvaise pratique

    Comment avoir accès à un controller depuis un autre ?
    ps: appeler un controller depuis une vue je trouve sa crado...

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    j'ai du mal a voir comment (pourquoi) tu appelles une méthode d'un autre controlleur
    Si tu forward/redirect vers l'action du controlleur en question, c'est pas crado.
    Si tu appelles du code "métier" séparé dans une autre couche, dans ton controlleur, alors l'appeler dans un deuxieme controlleur n'est pas crado.
    Parcontre appeler du code métier en "dur" dans un controlleur c'est plutot crade


    Si ca correspond pas a ton cas tu peux toujours poster le code de ton action

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 98
    Points : 163
    Points
    163
    Par défaut
    Quand un utilisateur voit un de ses articles supprimé par un modérateur, je souhaite envoyer un mail avec le motif
    je dois donc depuis mon controller postController appeler ma méthode deletePost($slug) qui elle meme doit appeler une méthode envoieMotif($motif, $user)
    sauf que envoieMotif($motif, $user) est dans mailerController

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 98
    Points : 163
    Points
    163
    Par défaut
    Parfait je vais tout simplement Forward.
    Je ne connaissait pas du tout et je trouve sa vachement propre et modulaire

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 60
    Points : 80
    Points
    80
    Par défaut
    Bonsoir,

    J'arrive sans doute un peu après la guerre mais allons-y tout de même
    Vu les arguments de ta méthode, je suppose que l'envoi de mails automatisé doit être récurrent. A mon sens, le mailer est alors un service appelé par le controller, ou mieux encore, via un listener.

  6. #6
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 98
    Points : 163
    Points
    163
    Par défaut
    @frfrance31 C'est ce que j'ai fait dans un premier temps(un service), mais j'ai un couplage fort entre mon controller qui supprime un message et celui qui envoie le mail...
    C'est le fait d'appeller un controller depuis un autre controller que je trouve pas tip top, un forward, je vois le forward comme une collaboration entre les controllers, bref j'adore, c'est rapide simple efficace.
    Je vais creuser la piste du listener, je n'en ai jamais fait, j'ai peur de me louper et que sa consomme de la ressource inutilement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/05/2014, 18h33
  2. Un application avec les servlets Respectant le Modele MVC
    Par lyes_djaml dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 24/01/2011, 00h18
  3. [Design Pattern]Respecter le modèle MVC
    Par etiennegaloup dans le forum Général Java
    Réponses: 2
    Dernier message: 16/10/2005, 12h00
  4. À lire (et à respecter) avant de poster !
    Par Community Management dans le forum Windows
    Réponses: 0
    Dernier message: 30/12/2002, 11h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo