2012-12-09 115 views
1

我試圖建立一個圖表這樣http://bl.ocks.org/4063269#index.html與d3.js:如何使用RoR顯示d3.js圓形包圖?

enter image description here

我需要通過投入控制方法和JS在.html.haml文件來做到這一點。我製作了控制器,但完全不知道如何編寫這些方法。

這些方法需要從sqlite3數據庫獲取值並將其轉換爲JSON以供d3.js使用。有人能讓我開始嗎?我不知道現在該怎麼辦...

回答

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

+0

對不起,不夠具體。反正,謝謝! – areke

+0

@areke你是否設法使它在ruby-on-rails上工作?易於集成? –