SQLクエリをActiveRecordに変換することに問題があります。ユーザーアクティブレコードのグループ化された行の合計を選択します。
のLineItem#数量:整数 - belongs_toの、line_items:多くを持っている - 整数:
ユーザ#1にhas_many:バスケット
バスケット#日:日、user_idはここに私のドメインモデルの簡易版ですbelongs_toの:バスケット
私はSQLで次のクエリを実行できます。
SELECT baskets.date, SUM(line_items.quantity) from baskets
INNER JOIN line_items ON line_items.basket_id = basket.id
WHERE baskets.user_id = 2
GROUP BY baskets.id
ORDER BY baskets.date DESC
pgAdminで、このクエリを実行している、私は2つの列を取得します私はしたい:バスケットの日付とその特定のバスケットに関連付けられているすべてのline_item数量の合計。しかし
、私は同じデータのためのActiveRecordクエリを構成しよう:
User.find(2).baskets
.select('baskets.date,'SUM(line_items.quantity)')
.joins(:line_items)
.group('baskets.id')
.order('baskets.date desc')
それはバスケットの日付を返しますが、グループ化されたLINE_ITEM量の合計ではありません。理想的には、{date => quantity、date => quantity ...}のような形式で結果を得たいのですが、どうやってそこに到達するかはわかりません。
は素晴らしい合計することができます
動作するはずこれをめちゃくちゃにされています。常に小さなもの。そして、良いことを知りたい!ありがとうございました。 – user7280963