2009-09-28 13 views
88

hay una manera de obtener el valor original que un atributo ActiveRecord (= el valor que se carga desde la base de datos)?cómo obtener el valor original de un atributo en rieles

Quiero algo como esto en un observador

before_save object 
    do_something_with object.original_name 
end 

La tarea consiste en eliminar el objeto a partir de una tabla hash (de hecho, moverlo a otra de las claves de la tabla) tras la actualización.

Respuesta

224

Al añadir _was a su atributo le dará el valor anterior.

+0

Gracias, exactamente lo que estaba buscando! –

+75

rieles es tan impresionante – digitalWestie

+7

ej .: 'para self.context':' self.context_was' –

8

método de ActiveRecord attributes_before_type_cast devuelve un hash de atributos antes de encasillamiento y deserialización se han producido.

Cuestiones relacionadas