ruby-on-rails - 如何在 ruby on rails 中合并 json arry
问题描述
根据月份合并数据同月收入添加在自己的月份和月份名称中没有复制
[{"revenu":0,"month":"January"},
{"revenu":0,"month":"February"},
{"revenu":0,"month":"March"},
{"revenu":0,"month":"April"},
{"revenu":1832.4430203602753,"month":"May"},
{"revenu":4502.1,"month":"May"},
{"revenu":54.673303657726436,"month":"May"},
{"revenu":0,"month":"June"},
{"revenu":0,"month":"July"},
{"revenu":0,"month":"August"},
{"revenu":0,"month":"September"},
{"revenu":0,"month":"October"},
{"revenu":0,"month":"November"},
{"revenu":0,"month":"December"}]
解决方案
new_arr = given_array.group_by{ |data| data[:month]}
new_arr.map{|key, val| {"month": key, "revenu": val.inject(0){|sum, hash| sum + hash[:revenu]}}}
推荐阅读
- pandoc - 使用 -A 选项将脚本添加到 pandoc
- apache - 为什么 Apache 忽略我的 VirtualHost 声明?
- reactjs - 我可以在应用程序被杀死后每 10 秒获取当前位置或在本机反应中获得背景吗
- javascript - Discord 机器人未运行
- java - 为什么 Spring UriComponentsBuilder 会抛出 java.lang.IllegalArgumentException?
- hibernate - 带有示例的 Hibernate 5.x 参考文档
- r - 使用 lapply 或 apply 或 mapply 函数动态合并数据框的列名和值
- javascript - 检查 API 调用查询参数是否有 !== 空值
- flutter - Flutter 在自定义对话框之间导航和发送数据
- android - Navigation Jetpack 上的深层链接