Bonjour à tous,
J'aimerai avoir votre opinion sur le rôle des form objects, services
objects et du controller. À votre avis, est-ce le form object qui va
créer un service et l'appeler ou est-ce que le controller doit créer un
service avec le form object en paramêtre? Je m'explique avec du code :
Est-ce que ça doit être ça :
class MyController < ApplicationController
def create
MyForm.new(params).save
end
end
class MyForm
def save
Service.new(self).save
end
end
ou
class MyController < ApplicationController
def create
form = MyForm.new(params)
Service.new(form).save
end
end
Autre question : Est-ce le rôle du controller de construire les modèle
ou à l'un des deux autres. Imaginons un formulaire de création
d'utilisateur avec un groupe. Est-ce que le "bon" code serait comme ceci :
class MyController < ApplicationController
def create
form = MyForm.new(user: user, group: group)
form.attributes = params[:user]
form.save
end
def user
User.new # or find
end
def group
Group.find(params[:group_id])
end
end
ou est-ce le formulaire ou le service devrait savoir comment créer les
associations. Est-ce le rôle d'un autre type d'objet?
C'est difficile de se retrouver dans ces concepts.
--
--
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/d/optout .