2015-07-22 70 views
0

我越來越瘋狂的數據庫設計。 我正在寫一個小應用程序來收集和比較一些流媒體服務中的電影。如何跟蹤活動記錄表中的日常更改?

基本上每天晚上我讓到服務的API一些遞歸調用,我從每部電影在目錄中獲取數據,並更新我的db表「電影」用這樣的方法:

Movie.where(title: 'movie_title').find_or_create.update(attributes) 

我想跟蹤每天的變化:

昨日電影A,B &下,在,電影ë&^h出 今天電影X,Y在電影B出

等等等等

我想爲每個db記錄添加一個「insertion_date」值,但當然不容易添加「remove_date」。

更好的設計的任何想法?

回答

0

對於您的電影表跟蹤更改,你可以使用適當的Rails的回調:在每一個記錄

class Movie < ActiveRecord::Base 
    # after_create, after_update, after_destroy 
end 

http://guides.rubyonrails.org/active_record_callbacks.html#available-callbacks

+0

審計軌跡的變化,但我需要跟蹤我的表中的變化。 –

+0

@RobertoPezzali查看更新的答案。在'after_destroy'回調中,你可以記錄「remove_date」 –