在这里,我有一个名为DeliveryCharge的数据库表。我试图获得每种方法的总重量值。我为此尝试过:
@a = DeliveryCharge.all.group("method")
@a_sum = @a.sum("weight")
logger.debug("-----------#{@a_sum}----------")
并给出以下输出:
-----------{"e-packet"=>6, "ems"=>482, "free-shipping"=>9999}----------
哪个好。但是现在我只希望输出数组中的方法而输出权重在另一个数组中。像这样: [“ e-packet”,“ ems”,“ free-shipping”]和[6,482,9999] 为此,我尝试了以下两种方法:
logger.debug("-----------#{@a_sum(:method)}----------")
logger.debug("-----------#{@a_sum[:method]}----------")
哪些不起作用。谁能帮助我如何获得如上所述的输出?
我也尝试过
logger.debug("-----------#{Array(@a_sum)}----------")
从中我得到:
------[["e-packet", 6], ["ems", 482], ["free-shipping", 9999]]---
但需要像我上面提到的那样获得它。
答案 0 :(得分:1)
由于@a_sum
是哈希,因此您可以简单地使用.keys
和.values
方法访问这些项目。
@a_sum.keys
和@a_sum.values
会给您您想要的东西!