クイックRailsの質問。私はコレクションを持っているときにいくつかのRailsメソッドのクエリデータベースなぜ
だから私は、データベースから取得し、のようなもののコレクションを持っている:
a = Invoice.all
をその後、私はそのコレクション上のすべての金額の合計を持ちたい:
a.sum(:amount)
それは作品とリターン適切な値、mu質問は、それが既にコレクション全体へのアクセス権を持っていて、コレクションからレコードを見ることができるときに、Railsが.sum()
の部分で2番目の呼び出しを行うのはなぜですか?だから私はコレクションを持っている任意のヘルプ
感謝を利用することができるのActiveRecordクエリを発射したくない場合は
sum
はSUM("invoices"."amount")
と異なるクエリを起動します。 'to_a'を実行した後でも' .sum() 'を使用できますか? –
@RomainGonçalvès:nope。これはAR関係オブジェクトではなく配列になりました(結果的にAR関係APIもなくなりました)。しかし、集計には配列/列挙可能なメソッドを使用できます。 –
申し訳ありません、ありがとう@セルジオ・チューリッセーヴ私の質問に答えると思います。おそらくDBから取得したレコードを装飾し、そのデータを操作するための砂糖を与えるライブラリがありますか?私はできるだけあなたの答えを受け入れるでしょう。 –