After a create it goes to a form?
No, but on new action. I can’t remove it from controller because I use it in the new order’s form.
I really don’t know what to do to have a smallest arity. I know I break the Sandi Metz’s rules. Most of the time, it means than there is one class with to many responsabilities. I think than the role of the controller is to give orders to other classes. The PaintingOrderCreator create an order for a painting. The method
process has really need all parameters to create a new order.
This may be because the form has to many models. The user should give a credit card (CreditCard model), information on the order (Order model) and need information for a painting (Painting model) and the painting price (PaintingPrice model).
One solution can be to split the form in some steps but my client don’t want it.
I think I will apply the solution given by @wpgreenway. It will be clean even there may still a conceptual problem.