2011-10-08 54 views
0

长话短说,每次用户查看资源时,都会创建一个Event模型对象。每个事件都有一个持续时间栏。我怎样才能最好地保存每个事件之间的持续时间?Rails:在“事件”之间节省持续时间

class Event 
    belongs_to :session 
end 

我的直觉反应是使用after_save的回调每创建一个新的事件时间,计算“现在”和以前事件之间的时间,并保存为一个事件的持续时间。然而,这会产生一个“瀑布”效果,因为回调会在前一个事件被保存时执行,然后是之前的事件,依此类推。

有什么建议吗?

谢谢!

回答

1

你最好使用after_create回调,这将不会触发,而更新以前的元素

0

我可能会在用户的会话中保留最后一个事件时间,因为它会很快......这是否合理可能取决于您何时需要此信息 - 是否用于报告,在交互中使用等