Perso j'aime pas trop Cells, ca sandbox trop. Je suis pour
decent_exposure Draper Object On Rails Virtus Adamantium 2013/6/11 Guirec Corbel <[email protected]> > @cyril : Tu oublis de factoriser par le coef DHH. J'appliquerai ta formule > très bientôt. > > @simon : je ne trouve rien à propos de delegate_finder. Je n'en ai jamais > entendu parlé. Peux-tu montrer un exemple? > > Je ne connaissais pas Cells. Je vais voir ce que c'est. > > @olivier : Merci pour ton avis. > > > Le 11 juin 2013 11:16, Olivier El Mekki <[email protected]> a écrit > : > > Hello, >> >> Le bon moment pour utiliser un presenter, c'est avant tout une décision >> esthétique. La plupart du temps, les méthodes des presenters ne seront >> utilisées qu'une seule fois, il n'y a donc pas ici de règle de >> refactoring applicable à tous les coups : le bon moment d'utiliser un >> presenter est celui où tu estimes qu'il y a trop de logique de >> présentation dans ta vue. >> >> Les helpers sont très similaires, mais ont plus vocation à être >> réutilisés, sans être liés à une resource particulière. >> >> Tu peux t'en servir par exemple pour formatter des messages >> d'erreur, générer des boutons qui sont composés de plusieurs éléments >> mais sont trop succints pour mériter un partial, etc. >> >> Si tu t'apprêtes à utiliser un presenter pour n'y mettre qu'une ou deux >> méthodes, il serait sûrement plus approprié d'utiliser des helpers >> égalements. >> >> On 11:03 Tue 11 Jun , Guirec Corbel wrote: >> > J'ai oublié de dire que, dans le cas des scopes, je parles de parties >> qui >> > concerne la présentation, utilisés par un menu par exemple. >> > >> > Une autre question, à partir de quel complexité faudrait t'il utiliser >> un >> > presenter. Si on à ça par exemple : >> > >> > f.association :company, label_method: :company_name, value_method: >> > :id, include_blank: false >> > >> > Est ce que ça serait utile de faire une fonction pour ça? Où mettre >> > cette fonction si ça devient trop complexe? >> > >> > >> > >> > Le 11 juin 2013 10:43, Guirec Corbel <[email protected]> a écrit >> : >> > >> > > Bonjour, >> > > >> > > Aujourd'hui je pose une question que je trouve un peu basique mais je >> suis >> > > totalement perdu : Quand utiliser draper, des presenters, des >> helpers, des >> > > scopes ou des partials? >> > > >> > > J'ai lu le post de Philippe Creux : >> > > http://reverbhq.com/blog/2012/08/building-web-apps-with-activeadmin/et >> > > je suis d'accord avec lui. On devrait utiliser draper quand on a >> besoin >> > > d'une action simple agissant sur un modèle. Un presenter contient une >> > > logique plus complexe agissant sur plusieurs modèles. >> > > >> > > J'aime bien la méthode de Ryan Bates présentée ici : >> > > http://railscasts.com/episodes/287-presenters-from-scratch, le >> problème, >> > > pour moi, c'est qui créer une variable "user_presenter" qui délègue >> des >> > > fonctions à sont modèle "user". Si l'on a beaucoup d'attributs ça peut >> > > devenir compliqué. Je pense que l'on ne devrait pas pour autant >> utiliser >> > > des fois "user_presenter" et d'autres fois "@user". >> > > >> > > Je n'aime pas non plus le fait d'instancier un objet "@presenter" >> dans le >> > > contrôleur. Ça viole une des lois de Sandi Metz. >> > > >> > > En ce qui concerne les partials, ça sert à décomposé de gros bloques >> de >> > > code dans de plus petits. >> > > >> > > Je m'interroge au niveau des scopes sur le fait d'appeler une fonction >> > > d'un modèle dans une vue. Par exemple, si on fait ceci : >> > > >> > > <% User.active_users.each do |user| %> >> > > .... >> > > <% end %> >> > > >> > > Je ne suis pas certain que ça soit une bonne pratique, qu'en >> pensez-vous? >> > > >> > > Quant aux helpers... ils servent à créer du html qui ne se sert >> d'aucun >> > > modèle? >> > > >> > > Quel est votre avis là dessus? Quels sont vos techniques? Avez vous >> des >> > > bons exemples? >> > > >> > > Bye! >> > > >> > >> > -- >> > -- >> > 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 . >> > >> > >> >> >> -- >> Olivier El Mekki. >> >> -- >> -- >> 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 .
