计算嵌套非常深的数组中的元素

时间:2014-04-14 18:57:11

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.2

我需要弄清楚是否有更好的方法可以计算数组中5级深度的元素数量。

我正在尝试计算一些报告。

以下是我的方法:

def member_report_sum
  members.sum(&:report_sum)
end

def report_sum
  member.information.groups.sum { |group| group.tasks.reports.count }
end

这是我的结构:

members: [
      {
        id: 'member_id',
        information: {
          groups: [
            {
              name: 'Member1',
              tasks: {
                reports: [
                  {
                    name: 'Report 1',
                  }
                ]
              }
            },
            {
              name: 'Member 2',
              tasks: {
                reports: [
                  {
                    name: 'Report2',

                  }
                ]
              }
            }
          ]
        }
      }
    }

是否有其他方法可以实现上述目标?

0 个答案:

没有答案