如何将Rails合并到jqPlot中?

时间:2012-07-25 14:50:57

标签: jquery ruby-on-rails ruby sqlite jqplot

我在SQLite3数据库中有一些数据,我通过Rails使用它。我试图以图形方式显示这些数据。使用条形图,饼图等。我决定使用jQuery框架来帮助我完成这项任务,所以我决定将jqPlot用于实际的图表。

如何从表中获取动态数据?我可以使用手动数据弹出图表,但从长远来看,这显然没有用。我将大部分代码放在我的视图中(之后我会将逻辑移到模型中,对于Rails Purists),这是一个.html.erb文件(嵌入式Ruby)。我不能在不使用<%和%>的情况下访问我的表,但是html本身并不了解Ruby。我目前的代码如下:

<% foo = [] %>

<% Book.all.each do |book| %>
  <% foo.push([book.isbn]) %>
<% end %>

$.jqplot('chartdiv',  [foo],
{
  title: {
    text: 'Test Message',
  },
});

但是jqplot函数不知道foo是什么。如何获取图表以使用存储在数据库中的数据?

Ruby 1.9.3,Rails 3.2.6,SQLite3 3.6.20,jquery-rails 2.0.2(RubyGem),JQuery 1.7.2,jqplot 1.0.0_r1012。

谢谢!

1 个答案:

答案 0 :(得分:1)

你试过这个:

$.jqplot('chartdiv',  [ <%= foo %> ],
{
    title: {
        text: 'Test Message',
    },
});

也许您必须执行类似foo.join(“,”)之类的操作,以逗号分隔的值列表转换数组...