I am having a hard time even formulating the question I want to be answered, so here's my situation:
他の場所にある既存のデータベースを使用して、単純な株式市場プロッター ツールを作成しようとしています。私のアプリには、どのデータベースでも動作する優れた動的なプロッターが既にありますが、特定の方法でデータが必要です。私のモデル(データベース)は次のようになります。
Stock:
|___ticker___|___open___|___close___|___date___|
| aapl | 100 | 101 | 1/1/11 |
| aapl | 101 | 102 | 1/2/11 |
| goog | 500 | 450 | 1/1/11 |
| goog | 450 | 451 | 1/2/11 |
...
私のプロッタ ルーチンは、データベース内の列に対応するクラス属性 (用語だと思います) に基づいて動作します。
に対応するすべてのデータを選択し、とを簡単'aapl'
にプロットできます。これは、モデルが属性を示しているためです。open
close
date
@stock = Stock.select_by_ticker('aapl')
>> @stock.open #=> 100 ...
>> @stock.close #=> 101 ...
>> @stock.date #= 1/1/11 ...
したがって、属性は次のようになります
{open, close, date}
しかし、異なる株の終値などを比較したい場合は、各株に関する属性が必要です。したがって、基本的には、ティッカー名を属性として持ち、それぞれがデータベース内のティッカーのハンクに対応するモデルを作成したいと考えています。簡単に構築できるスコープを使用して、次のようなものが必要です。
@stock = Stock.select_close_by_ticker('aapl','goog')
属性は次のとおりです。
{aapl, goog, date}
aapl と goog には、そのティッカーだけの終値データが含まれています。必要に応じて、複数のデータベース クエリを実行できます。今のところ、データをこの形式に並べ替えられるようにしたいだけです。また、完全に動的でなければならないため'aapl'
、'goog'
やその他の何百万ものティッカーをモデルにハードコードすることはできません。