Ok para crear instancias de un objeto en la vista?
-
06-09-2019 - |
Pregunta
¿Está bien crear una instancia de un objeto en una vista antes de pasarlo a un parcial?
<%= render :partial => "trade_new", :locals => {:trade=>Trade.new("e", "b") } %>
O es mejor para crear instancias de objetos en el controlador como variables de instancia:
@trade = Trade.new("e", "b")
y luego pasar la variable de instancia a un parcial en la vista como esta:
<%= render :partial => "trade_new", :locals => {:trade => @trade } %>
Mi conjetura es que es mejor para crear instancias de objetos nuevos en el controlador para evitar la duplicación -., Como en el caso de que varias plantillas pueden necesitar para pasar este nuevo objeto a un parcial de la misma acción
Solución
En primer lugar, que está bien para una instancia de un objeto en la vista. Nada probablemente va a explotar en la cara. Sin embargo, a continuación, se le pasa toda la ventaja de dividir su arquitectura en niveles.
Es mejor para instanciar el objeto en el controlador. Algunas de las razones incluyen - una mejor reutilización, pruebas mucho más simple, mejor diseño debido a la disociación
.Vea los artículos sobre patrones de presentación aquí .