Guirec, je crois t'as pas bien compris mon point.

On s'en fiche si tes méthodes/helpers dans ta vue te retournent un
objet Decorator, Presenter, Schmilblick ou Caribou (dédicace !), c'est
pas le point ici.

Au final même si t'utilises une seule variable d'instance, tu utilises
deux concepts dans tes vues : l'appel aux helpers/méthodes et l'appel
à ta variable d'instance.

Autant n'appeler que des méthodes/helpers.

Nicolas.

2013/6/4 Cyril Mougel <[email protected]>:
> Sandi Metz Rules \o/
>
> http://thunderboltlabs.com/posts/5-simple-rules-to-good-oo-in-rails.html
> https://gist.github.com/henrik/4509394
> http://robots.thoughtbot.com/post/50655960596/sandi-metz-rules-for-developers
>
>
> 2013/6/4 Guirec Corbel <[email protected]>
>>
>> J'ai lu quelque part (je n'arrive plus a mettre la main sur le post)
>> qu'une bonne pratique était de ne passé qu'une seule variable d'instance
>> entre le contrôleur et la vue. Si on a un contrôleur UsersController, on
>> doit se limiter à passer des variables représentant la class User.
>>
>> Je pense qu'utiliser des helpers de contrôleur c'est un peu contourner le
>> problème. Il faudrait remplacer les autres instances par des presenters.
>>
>> J'avoue que j'ai du mal, parfois, avec ce principe. L'utilisation des
>> helpers, des presenters, des partials et des decorators sont encore assez
>> difficile pour ma part.
>>
>>
>> Le 4 juin 2013 09:16, Nicolas Blanco <[email protected]> a écrit :
>>
>>> Hello tous !
>>>
>>> Vu qu'il y a eu un sujet sur le DCI, je vous propose un nouveau sujet
>>> "troll" sur les variables d'instance dans les contrôleurs et vues
>>> Rails.
>>>
>>> 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.
>>>
>>> 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 ?
>>>
>>> --
>>> Nicolas Blanco, Web developper
>>>
>>> http://www.nicolasblanco.fr
>>> Jabber/GoogleTalk : [email protected]
>>> Twitter : http://twitter.com/slainer68
>>> Github : http://github.com/slainer68
>>> Skype : slainer68
>>>
>>> --
>>> --
>>> 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 .
>>>
>>>
>>
>> --
>> --
>> 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 .
>>
>>
>
>
>
>
> --
> 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 .
>
>



-- 
Nicolas Blanco, Web developper

http://www.nicolasblanco.fr
Jabber/GoogleTalk : [email protected]
Twitter : http://twitter.com/slainer68
Github : http://github.com/slainer68
Skype : slainer68

-- 
-- 
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 .


Répondre à