アプリケーションのクエリ数を減らしようとしていますが、次の設定でサポートが必要です。
私は5つのモデルを持っています:
- ベット
- 選択
- スポット価格
- スポットエリア
- 製品
それらは以下に関連付けられています。
- ベットbelongs_toChoice
- 選択belongs_toSpotarea
- 選択belongs_to製品
- 選択has_manyベット
- SpotpriceはSpotareaに属します
- Spotpricebelongs_to製品
- Spotarea has_many Spotprices
- Spotarea has_many Choices
- 製品has_manySprotprices
- 製品has_manyChoices
私の目標は、特定の賭けに一致するスポット価格を見つけることです。これを行うには、次のクエリを使用しますが、より良い方法で実行できると確信しているため、100ベットを実行して、対応するSpotpriceを上回っているか下回っているかを確認したい場合は、DBをオーバーロードしません。クエリで。
a = Bet.find(5)
b = Choice.find(a.choice_id)
c = Spotprice.where(:spotarea_id => b.spotarea_id, :product_id => b.product_id,
:deliverydate => b.deliverydate).first
ありがとう!