philippe lachaise wrote: > Appeler une méthode d'un controlleur à partir d'un autre controlleurs ma > parait un peu barbare (à supposer que ça ne plante pas). > > N'est-ce pas plutôt qu'un simple "render :partial" répondrait à ton > besoin ? > > Sinon on peut arriver "proprement" dans un autre controlleur via un > "redirect_to" si on doit vraiment passer dans le contexte d'un autre > controlleur. > > -- > Web development is coming of age with Ruby on Rails > blog.lachaise.org
oui l'utilisation d'un partial est une solution mais dans ce cas il faudrait mettre le code "métier" dans le partial ce qui n'est pas le but. le controller qui sert d'aiguillage déclenche des actions en fonction de mots clés correspondants a des minis-applications. je ne souhaite pas faire de redirect car je perdrai l'url et une page peut contenir plusieurs mini-applis. ex : url -> monsite/galerie La page galerie se compose de 2 mots clés correspondant à 2 applis distinctes et autonome dans l'architecture. Mot-clé 1 : galerie Mot-clé 2 : abonnement_mailing Mon controlleur boucle sur les mots-clés de cette page : contentRetour = "" motsCles.each do |mot_cle| case mot_cle when "galerie" contentRetour += RENDU DE LA METHODE D'AFFICHAGE DU CONTROLEUR GALERIE when "abonnement_mailing" contentRetour += RENDU DE LA METHODE D'AFFICHAGE DU CONTROLEUR MAILING end end RenderComponent fonctionne pas mal dans ce cas mais j'ai vu dans le dernier bouquin Rails que ses performances était remises en question, et abandonné dans les futures versions de Rails. En fait je veux pouvoir faire en Rails ce que je faisais en php avec un simple include. Exécuter un bout de code indépendant du controlleur courant. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED] -~----------~----~----~----~------~----~------~--~---
