У меня есть отношение ActiveRecord, которое выглядит примерно так:
[
{
timestamp: Tue, 02 Oct 2018 00:00:00 PDT -07:00,
user_id: 3,
organization_id: 1,
all_sales: 10,
direct_sales: 7,
referred_sales: 3,
},
{
timestamp: Wed, 03 Oct 2018 00:00:00 PDT -07:00,
user_id: 3,
organization_id: 1,
all_sales: 17,
direct_sales: 8,
referred_sales: 9,
},
{
timestamp: Thu, 04 Oct 2018 00:00:00 PDT -07:00,
user_id: 3,
all_sales: 3,
direct_sales: 3,
referred_sales: 0,
}
]
Я хотел бы создать «сумму» всех ключей, относящихся к продажам (для наших целей здесь яне нужно timestamp
, user_id
или organization_id
, так что в целом я хотел бы закончить примерно так:
{
all_sales: 30
direct_sales: 18
referred_sales: 12
}
Есть ли элегантный рубиновый способ сделать это«Я мог бы легко создать набор переменных для каждой категории продаж и дополнить их, пока я перебираю исходное отношение, но я хотел посмотреть, есть ли у сообщества более чистый метод. На самом деле каждый из этих хэшей имеет более 3 релевантных ключей.и поэтому я боюсь, что такой подход очень быстро испортится.
Редактировать: Я также проверил некоторые другие ответы на подобные вопросы здесь, на SO (например: Лучший способ суммировать значения в массивехэши ), но в идеале я бы не повторял так много раз.