Ruby 断开注入块时返回零
我想把订单金额加起来 但是如果Ruby 断开注入块时返回零,ruby,Ruby,我想把订单金额加起来 但是如果order.upgrade!=nil我将立即结束该块 但是我得到了nil值 那不是我的期望 如何实现我的目标 谢谢 points = orders.inject(0) do |sum, order | break if order.upgrade != nil sum += order.actual_amount if order.actual_amount end From:break接受一个值,该值提供它要“中断”的表达式的结果 point
order.upgrade!=nil
我将立即结束该块
但是我得到了nil
值
那不是我的期望
如何实现我的目标
谢谢
points = orders.inject(0) do |sum, order |
break if order.upgrade != nil
sum += order.actual_amount if order.actual_amount
end
From:break接受一个值,该值提供它要“中断”的表达式的结果
points = orders.inject(0) do |sum, order |
break sum unless order.upgrade.nil?
sum += order.actual_amount || 0
end