Ruby on Rails:如何从记录生成数组以在Highcharts中显示?

我需要将数据集显示为Highcharts柱形图。 我不知道如何将数据传递给Highcharts的Javascript方法以显示我当天的业务流程分数。

数据集是在我的BusinessProcess控制器中构建的:

@business_process_history = DmMeasure.where("period_id between ? and ? and ODQ_object_id = ?", first_period_id, current_period_id, "BP-#{@business_process.id}").select("period_day, score").order("period_id") 

这给出了预期的2个字段,10个记录结果,并且将完美地显示在HTML表中。

更新:

多巴哥的建议给出了预期的arrays数组,

 [["20140820", #], ...] 

但问题没有解决。

这是函数调用,包括多巴哥的建议:

  $(function () { $('#measures').highcharts({ chart: {type: 'column'}, title: {text: 'Data quality trend'}, xAxis: { title: {text: 'Time'} }, yAxis: { title: {text: 'Score'} }, series: [{ data:  }] }); });  

此脚本在度量DIV中不产生任何内容,而硬编码的值列表确实生成图形。

我尝试了几种方法,但仍然无法管理。

你能帮帮我吗?

非常感谢,

最好的祝福,

弗雷德

尝试:

 @business_process_history.map { |bp| [bp.period_day, bp.score] } 

多亏了多巴哥的建议, 最终的解决方案是:

 @business_process_history.map { |bp| [bp.period_day, bp.score.to_f] } 

1 – 使用块的map方法生成正确的数组数组

2 – 应用于得分字段的to_f方法可确保数据类型符合Highcharts的期望。

谢谢多巴哥!

弗雷德