私はこの状況を持っています:
skeleton =
{
"timeline" =>
{
"data" => []
}
}
template =
{
"A" => "",
"B" => "",
"C" => "",
}
コントローラーから、ハッシュの配列を返すクエリを作成します。
@cdr = Cdr.select("start, end, clid")
次に、配列を反復処理して「テンプレート」ハッシュ フィールドを設定し、最後のステップで、このハッシュを「スケルトン」ハッシュに属する配列に追加します。
@cdr.each do |cdr|
template["A"] = cdr.start
template["B"] = cdr.end
template["C"] = cdr.clid
skeleton["timeline"]["data"] << template
end
したがって、期待される結果は次のとおりです。
skeleton =
{
"timeline" =>
{
"data" => [
{
"A" => "sample1",
"B" => "sample2",
"C" => "sample3",
},
{
"A" => "sample4",
"B" => "sample5",
"C" => "sample6",
}
]
}
}
しかし、私が得ている実際の結果は次のとおりです。
skeleton =
{
"timeline" =>
{
"data" => [
{
"A" => "sample1",
"B" => "sample2",
"C" => "sample3",
},
{
"A" => "sample1",
"B" => "sample2",
"C" => "sample3",
}
]
}
}
配列内のすべてのエントリには同じデータが含まれます。なんで?