Le form object est un excellent design pattern qui evite de surcharger le 
modele en validations inutiles (validate le first name, mais j'ai un batch 
avec uniquement des emails, on va pas faire un validate false...).

Ca rejoint exactement ce que dit Olivier avec sa notion de contexte qui est 
primordiale.

Ceci dit c'est tellement simple de creer une classe de form object (avec 
virtus notamment) que le gem me semble un peu superflu.

Quoiqu'il en soit il a le merite de promouvoir la good practice, ce qui est 
deja tres bien.

Ben


On Thursday, February 27, 2014 3:57:45 PM UTC+1, Guirec Corbel wrote:
>
> Bonjour à tous,
>
> Je voulais vous annoncer que j'ai fait une gem sur les form objects : 
> https://github.com/GCorbel/activeform-rails.
>
> La raison qui ma mener à faire cette gem c'est tout simple que je trouve 
> que les forms objects est un très design pattern, assez rapide à 
> comprendre, à mettre en place et le bénéfice est rapide. Comme recorder 20 
> fois la même chose n'est pas mon activité préféré j'ai cherché une gem. Je 
> suis rapidement tomber sur reform et après deux pull requests  (
> https://github.com/apotonick/reform/pull/63 et 
> https://github.com/apotonick/representable/pull/71) je me suis rendu 
> compte que c'est assez instable et je trouve qu'il y a beaucoup de chose 
> pour rien. Je n'ai pas trouvé de solution satisfaisante donc je l'ai fait 
> moi même.
>
> J'ai changé un peu l'utilisation mais rien de révolutionnaire. 
>
> Premièrement il faut toujours spécifier un objet lors de l'initialisation. 
> Dans reform c'est `UserForm.new(user)` et moi j'ai `UserForm.new(user: 
> user)`. Ça permet de simplifier les cas ou il y a plusieurs modèles pour 
> l'utilisation et également dans la programation de la gem.
>
> Deuxièmement, dans reform il faut fait un `form.validate(params)` qui va 
> remplir les informations du formulaire. Il y a un `form.from_hash` mais 
> caché. J'ai choisi de rendre ça explicite et de faire 
> `form.fill_attributes(params)` puis un `form.valid?`.
>
> Laisser moi savoir ce que vous en pensez.
>
> J'ai vu qu'il y a eu une présentation au Paris RB sur les form objects. 
> C'est dommage pour moi car c'est une présentation que j'aurai voulu faire 
> si j'arrive a venir cette année. *SVP, laissez moi les services 
> objects!!!!!!*
>  

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