如何使用RoR显示d3.js圆包图?

时间:2012-12-09 07:43:39

标签: ruby-on-rails json d3.js sqlite circle-pack

我正在尝试使用d3.js:

设置这样的http://bl.ocks.org/4063269#index.html图表

enter image description here

我需要通过将方法放在控制器中并将js放在.html.haml文件中来实现。我已经制作了控制器,但完全不知道如何编写方法。

这些方法需要从sqlite3数据库获取值并将其转换为JSON以供d3.js使用。有人能让我开始吗?我现在不知道该怎么做......

1 个答案:

答案 0 :(得分:3)

不幸的是,您所提出的问题太过开放,有更多细节可以获得更多帮助;)

因此,javascript库将对您的应用程序进行ajax调用,您的应用程序应该使用json进行响应吗?

在这种情况下,您可以在config / routes.rb上进行路由,然后您只需编写如下方法:

class MyController < ApplicationController

  def values_for_js
    my_data = MyModel.calculate_data
    respond_to do |format|
      format.json { render json: my_data.to_json }
    end
  end
end

你的js应该请求类似http://mywebsite.com/values_for_js.json的东西(或者它可以在ajax请求中说明需要json格式)。如果您无法发出json请求,则可以使用format.js而不是format.json