2011-11-27 4 views

risposta

37

.new rende un'istanza (ma sarà comunque necessario lo .save).
mentre
.create rende un'istanza e lo salva in un colpo solo.

Speriamo che questo aiuti la vostra decisione su quale utilizzare.

+0

Ho aggiornato la risposta un po 'per il formato e la chiarezza. –

+0

grazie Michael, spero che questo aiuti più persone in futuro :) – jamiethepiper

4

Dipende da cosa vuoi ottenere. Il metodo new crea semplicemente un'istanza di un nuovo oggetto e il metodo create crea un oggetto e lo salva nel database, se le convalide passano.

+0

@MichaelDurrant, sì. Presumo che tu stia parlando di ActiveRecord: http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-c-create. – Mischa

+0

Grazie Mischa +1 –