2012-04-10 9 views
10

Tengo una tabla de sesiones basadas en la memoria que contiene los siguientes:Cambio updated_at en un registro de rieles

id 

sessnhash 

userid 

created_at 

updated_at 

La idea es que cuando se crea un usuario inicia sesión por primera en una aleatoria sessnhash y pasa de nuevo por lo que todas las acciones adicionales tiene que enviar ese sessionhash para las solicitudes del servidor. Estos pasan por una sesión iniciada? método en el controlador de la aplicación que simplemente verifica que exista una fila en la tabla para ese sessionhash.

Ahora quiero extender esta funcionalidad para mantener una pestaña de la última vez que sucedió alguna actividad para ese usuario y pensé que una de las formas de hacer esto sería hacer un guardado inmediatamente después de encontrar el sessionhash, con la esperanza de que esto luego actualice el atributo 'updated_at'.

Sin embargo, Rails es demasiado inteligente y no actualiza nada, ya que en realidad no se ha actualizado nada.

¿Hay alguna forma de obligar a Rails a actualizar el atributo updated_at sin tener que realizar ningún cambio de datos en ninguno de los otros atributos?

+0

Deberías aceptar tu respuesta. –

Respuesta

22

Acabo de enterarme de que tengo que hacer.

sessn.touch 

que actualizará el atributo updated_at.

Todo está aquí: touch.

Cuestiones relacionadas