Une petite question qui paraitra surement très simple à certain: J'ai une méthode "last_search_path" qui génère une url suivant une cuisine personnelle. Cette cuisine ne peut pas être traduite en route standard et incluse dans config/routes.rb Mais j'aimerai quand même bien que cette méthode soit accessible depuis les controller et depuis les vues, comme le sont les méthodes url_for() et toutes les named_routes. Si je la met dans application_controller, elle est accessible uniquement depuis les controllers Si je la met dans application_helper, elle est accessible uniquement depuis les helpers. Donc comment faire de la façon la moins tordue possible? J'attends vos réponse, et je vous en remercie par avance. Sébastien.
on 2010-03-10 11:07
on 2010-03-10 11:13
Le 10/03/10 11:06, Sébastien Lamy a écrit : > Si je la met dans application_controller, elle est accessible uniquement > depuis les controllers > Si je la met dans application_helper, elle est accessible uniquement > depuis les helpers. > > Donc comment faire de la façon la moins tordue possible? Si tu en as besoin dans tous les controllers tu peux juste inclure le helper dont tu as besoin dans ton ApplicationController, sinon tu l'inclus dans les controllers concernés. -- Martin Catty || fuse http://www.noremember.org http://www.synbioz.com
on 2010-03-10 11:28
La plus simple selon moi c'est de l'ajouter aux contrôleurs et d'en faire une helper_method comme ça elle sera aussi accessible depuis les helpers et les vues. Voici comment (dans ton contrôleur) : helper_method :last_search_path Sinon bien entendu tu peux soit la donner directement au ApplicationController dont tous les contrôleurs héritent, soit la mettre dans un module que tes contrôleurs incluent (par exemple à travers un include dans ton ApplicationController comme ça tout le monde y a droit mais c'est quand même bien rangé dans son module). En espérant que t'aide à avancer. Michel Belleville 2010/3/10 Martin Catty <martin@noremember.org>
on 2010-03-10 11:47
Merci pour vos réactions rapides. J'ai opté pour la méthode de michel, en déclarant helper_method :last_search_path dans ApplicationController. Et en définissant last_search_path dans ce même controller(j'en ai besoin partout dans l'appli). Sébastien. Michel Belleville a écrit :
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.