似乎同样如此的另一种看法是:
由于这里得到的帮助,我很容易得到一些选定的交易:
@trip_hash = transactions.sum(:amount_cents, :group => :trip_id)
然而,问题是:amount_cents一栏是一个原始货币目标,需要先加以修改,以适应货币兑换。 货币“与”计划类似:
composed_of :amount,
:class_name => "Money",
:mapping => [%w(amount_cents cents), %w(currency currency_as_string)],
:constructor => Proc.new { |cents, currency| Money.new(cents || 0, currency || Money.default_currency) },
:converter => Proc.new { |value| value.respond_to?(:to_money) ? value.to_money : raise(ArgumentError, "Can t convert #{value.class} to Money") }
我可以轻易地呼吁:
transactions.map(&:amount).inject(:+)
要获得一个经过转变的孙子,但我可以说明如何在集团中这样做。
许多人再次感谢帮助!