use*_*621 5 javascript ruby jquery charts ruby-on-rails
我想使用Google可视化图表将信息显示到图表中.
用于将值设置到图形中的javascript函数如下所示:
function drawLineChart(chartType) {
if(chartType == undefined) {
chartType = 'data1';
}
var data = {
data1: [
['Year', 'Sales', 'Expenses'],
['2004', 1000, 400],
['2005', 1170, 460],
['2006', 660, 1120],
['2007', 1030, 540]
]
};
...
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,我不知道如何使用数据库中的值填充这样的数组 - 任何提示?
非常感谢
您需要将 javascript 嵌入到 erb 中。如果您为文件命名chart.js.erb,您将能够Model通过 erb 从 javascript 访问逻辑。此方法的缺点是必须在每个页面视图上编译 JavaScript,而不是静态编译资源。这可能会减慢页面加载时间,如果这是一个流量很大的页面,则应寻找替代路线。
例子
chart.js.erb
function drawLineChart(chartType) {
if(chartType == undefined) {
chartType = 'data1';
}
var data = {
data1: [
<%= Model.all.map { |m| [m.year, m.sales, m.expenses] }.unshift(['Year', 'Sales', 'Expenses']) %>
]
};
...
}
Run Code Online (Sandbox Code Playgroud)
或者,您可以创建一个 AJAX 请求,通过 API 控制器在页面加载时填充数组。此方法允许静态编译资源,但有点复杂。
| 归档时间: |
|
| 查看次数: |
2896 次 |
| 最近记录: |