2012-02-20 54 views
0

我有一個視圖幫助器,用於彙總行項目內的項目。每個訂單可以有多個訂單項。每個訂單項都有不同的尺寸(字段)。對於下面的內容,我很好奇如何總結多個訂單項的特定字段。查看幫助器以彙總訂單項金額

def total_items(order) 
     xxs = order.lineitems.xxs.sum 
     return xxs 
end 

這是我有什麼,但是當有一個訂單多個行項目不工作,我怎樣才能正確地寫呢?

回答

1

這不是很明顯的你問什麼,但我想你想要的是這樣的:

def total_items(order) 
    order.lineitems.inject(0) { |total, line_item| total + line_item.xxs } 
end 

這是什麼方法呢,就是類似於這樣:

def total_items(order) 
    total = 0; 
    order.lineitems.each do |line_item| 
     total += line_item.xxs 
    end 
    total 
end 

通過在Ruby中,return關鍵字是可選的。