Domanda

E 'ok per istanziare un oggetto in una vista prima di passarlo ad un parziale?

<%= render :partial => "trade_new", :locals => {:trade=>Trade.new("e", "b") } %>

O è meglio per creare un'istanza di qualsiasi oggetto nel controller come variabili di istanza:

@trade = Trade.new("e", "b")

e quindi passare la variabile di istanza di una parziale vista in questo modo:

<%= render :partial => "trade_new", :locals => {:trade => @trade } %>

La mia ipotesi è che è meglio per istanziare nuovi oggetti con il controller per evitare duplicazioni -. Come ad esempio nel caso in cui più modelli possono avere bisogno di passare questo nuovo oggetto ad un parziale dal stessa azione

È stato utile?

Soluzione

In primo luogo, è bene istanziare un oggetto nella vista. Nulla sarà probabilmente saltare in aria in faccia. Tuttavia, poi si dimentica tutto il vantaggio di dividere la vostra architettura in livelli.

E 'meglio un'istanza dell'oggetto nel controllore. Alcuni dei motivi includono - miglior riutilizzo, test molto più semplice, migliore progettazione a causa del disaccoppiamento

.

Vedere gli articoli sui modelli di presentazione qui .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top