【发布时间】:2013-12-22 22:29:34
【问题描述】:
我有一个名为“数据”的数组数组,它是: (构建它以适应使用sb's advice on Active Admin)
我需要使用它的数据来创建一个具有这种结构的哈希数组:
data_prepared_for_table = [{goal: data[0][0], number: data[0][1]},
{goal: data[1][0], number: data[1][1]},
{goal: data[2][0], number: data[2][1]},
{goal: data[3][0], number: data[3][1]},
{goal: data[4][0], number: data[4][1]},
{goal: data[5][0], number: data[5][1]}
]
在 data_prepared_for_table 中,Goal 必须显示数组“日期”的第一部分:获取、品牌、资格。
数字必须在数组“数据”中显示相关数量,例如 3、2、1。
我想做两件事:
-
通过使用 lop each 或 for 来简化/改进代码,这将使我能够生成 data_prepared_for_table 类似:
data_prepared_for_table = [(0..5).each do |i| {goal: data[i][0], number: data[i][1]}, ]但它不起作用并产生错误。我该怎么做?
1234563到数据 [6] 甚至更多 [7] 等等......
我其实不知道要等多久!
如果不指定i 的最后一个值,我该怎么做?也许在迭代中,指定i 必须递增直到data[i][0].exists??
【问题讨论】:
-
你能显示预期的输出目标和数据指的是什么吗?
-
@bjhaid 刚刚添加了一些解释。这是非常基本的:我有一个带有goal_type 的数组,每个goal_type 都有一个数字。我需要使用名为“data”的数组中的信息来创建另一个名为 data_prepared_for_table 的数组。我设法做到了,但正如我所说,如果可能的话,我想通过循环/迭代来干燥/简化/减少代码。我还需要提供我不知道数组中值的数量的情况。
标签: ruby-on-rails ruby arrays ruby-on-rails-3 activeadmin