2011-02-08 25 views
2

我在創建集合中的值時遇到了一些困難。我擁有的收藏品來自(in rails)一對多的關係,訂單有很多產品。Ruby 1.9.2/Rails 3 - 哈希集合中的求和

該產品是哈希值,並有一個價格:價值。

之前我已經使用過內置的array.sum方法,所以我試圖從我的產品中獲取所有價格,並創建一個新數組,然後總結出這個數字,但一直無法選擇價格數值從我的這個陣列的產品。

有沒有更好的方法,我應該試圖做到這一點?我正在嘗試爲我的訂單模型構建一個方法,該方法通過獲取屬於訂單的產品價格總和來定義訂單的總價格。

回答

8

我會做到以下幾點:

 
class Order 
    has_many :products 

    def price 
    products.all.sum(&:price) 
    end 
end 

現在呼籲。價格訂單對象將總結所有產品的價格爲您服務。

+0

非常感謝,先生,我知道我必須做一些性感的方式。我非常感謝幫助。 – Kombo 2011-02-08 19:38:11