2013/6/4 Nicolas Blanco <[email protected]> > Hello tous ! > > > Je me suis rendu compte que sur mes derniers projets, je n'ai utilisé > aucune variable d'instance, et qu'un "ack '@' app/controllers" ne me > retourne aucun résultat :). > > Pour faire court je remplace toutes mes variables d'instance par des > méthodes et helpers de contrôleurs, quelques fois définis avec > decent_exposure (qui met en cache automatiquement et évite > l'utilisation de ||= ). > > Je ne vois que des avantages à cela : > * Isolations des vues, > * Eviter les exceptions pourries style "undefined method `each' for > nil:NilClass", > * Le code de la méthode est appelé que s'il est effectivement utilisé > par la vue, > * Un concept en moins à utiliser, > * Je trouve le caractère @ moche dans le code (tout comme $ en PHP :D), > * etc. >
Je suis d'accord avec toi sur le fait que l'utilisation des variables d'instance dans les vues est une mauvaise pratique. Je me suis déjà exprimé sur ce sujet sur mon blog :) http://blog.shingara.fr/pourquoi-jai-arrete-decent-exposure.html Même si j'avoue revenir à nouveau sur decent_exposure aussi :) > > Il m'arrive de faire des mini présentations de Rails, que pensez-vous > de ne carrément plus apprendre ce concept de passage de variables > d'instance entre contrôleurs et vues aux débutants, voir de l'enlever > des guides, etc ? > Globalement, je suis pour. Ne pas montrer cette possibilité ne pourra que simplifier nos vues en sachant que c'est tres simple de faire sans en builtin avec le helper_methods. -- Cyril Mougel http://blog.shingara.fr -- -- 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] --- Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Railsfrance. Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse [email protected]. Pour plus d'options, visitez le site https://groups.google.com/groups/opt_out .
