次のコードがあります。
>[['string', 'User'], Foo.all.map {|c| ["number", c.name]}, ['number', 'Average Time']]
=> [["string", "User"], [["number", "Bar1"], ["number", "Bar2"], ["number", "Bar3"]], ["datetime", "Average Time"]]
私がやりたいことは、渡された Foo 列挙可能な配列を単純にフラット化することです:
=> [["string", "User"], ["number", "Bar1"], ["number", "Bar2"], ["number", "Bar3"], ["datetime", "Average Time"]]
私は次のことを試しましたが、私が望んでいたことはうまくいきませんでした:
>[['string', 'User'], Foo.all.map {|c| ["number", c.name]}.flatten, ['number', 'Average Time']]
=> [["string", "User"], ["number", "Bar1", "number", "Bar2", "number", "Bar3"], ["datetime", "Average Time"]]
テスト時に、出力例で示されているようにFool.all.map
パーツを置き換えることができることに注意してください。[["number", "Bar1"], ["number", "Bar2"], ["number", "Bar3"]]