2017-04-07 23 views
0

私はテーブルと呼ばれるモデルを持っています、テーブルは価格と呼ばれる属性を持っています。テーブルの所有者が望むときはいつでも、価格は毎日変わるかもしれません。どのようにして価格のすべての価値を追跡することができ、1st JAN 2017または他の過去の日付の表の価格を返すことができます。これを行うにはRails異なる日に異なる値を持つモデルのモデル

+0

これまでに何を試みましたか?この質問は現在のところ答えが広すぎます。 –

答えて

0

1つの方法は、2つの属性datepriceTableモデルへの参照を持っているTableCalendarPriceような新しいモデルのものとして価格を作ることになります。

0

あなたは、CREATE TABLEモデルに関係今

has_many :price_history 

を作成し、

rails g model PriceHistory price:float table:references 

と表モデルにPriceHistory

新しいモデルを作成し、時間

の上に価格変更の履歴を保持することができます保存前のオプション

before_update :set_price_history 

def set_price_history 
    if price_changed? 
     a = PriceHistory.new(table_id: :id, price: :price) 
     a.save 
    end 
end 

これは自動的にcreated_atのエントリを作成します。これは、日付と比較して前の日付の価格を取得することができます。

これは役に立ちます..

関連する問題