我有一个名为Table的模型,表中有一个名为price的属性。每当表的所有者想要时,价格可能每天都在变化。如何跟踪价格的所有价值,以便我可以在2017年1月1日或任何其他过去日期返回表格的价格。
答案 0 :(得分:0)
执行此操作的一种方法是将价格作为新模型,例如TableCalendarPrice
,其中包含两个属性date
和price
以及对Table
模型的引用
答案 1 :(得分:0)
您可以保留价格随时间变化的历史记录
创建一个新模型PriceHistory
rails g model PriceHistory price:float table:references
并在表模型中创建关系
has_many :price_history
现在在Table模型中创建一个保存前选项
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
条目,可以与日期进行比较以获取之前日期的价格。
希望这会有所帮助..