これのいくつかは、DBの選択に依存します:OO、ドキュメント、またはリレーショナル。一般的なリレーショナルDBを使用している場合は、価格と在庫の間の1対多の関係を表す価格のテーブルがあります。
時間とともに価格を追跡したいと思うので、価格については別のクラスが必要なようです。これがRubyではないことは知っていますが、Stockクラスは次のようになります。
public class Stock
{
public int Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public List<Price> PriceHistory { get; set; }
}
そして価格:
public class Price
{
public int StockId { get; set; }
public DateTime PriceDate { get; set; }
public decimal Price { get; set; }
}
注:IDは公開されているため、外部のクラスによって変更される可能性があるという事実を無視する必要があります。ただし、このコードは簡単にするためにこのように示されています。
お役に立てば幸いです。