2010-07-26 23 views
54
class Post < ActiveRecord::Base 
end 

post = Post.new 

¿Cómo puedo juzgar si la 'publicación' es un nuevo modelo que no se extrae de la base de datos? Método¿Cómo saber si un modelo es nuevo o no?

+1

Utilice 4 plazas de muesca para marcar el texto como código. –

+0

¡Oh, muchas gracias! – Croplio

Respuesta

37

de ActiveRecord new_record? vuelve true si el objeto no se ha guardado todavía.

+4

new_record? es una nota que figura en la documentación vinculada Creo que usted quiso decir esto: http://api.rubyonrails.org/classes/ActiveRecord/Persistence.html –

+1

@jcarlson Mire cuando publique mi respuesta y considere que la documentación puede haber cambiado en mientras tanto. –

6

Usted puede usar post.persisted? así, si return false registro de medios en la nueva

persisted?

+1

Esto es más directo, porque con 'new_record?' Tendrá que probar 'false' para saber si su registro se ha guardado. Una lógica un tanto atrasada en mi mente, ¡pero a cada uno la suya! –

Cuestiones relacionadas