[問題] RoR的hightchart如何取得資料

作者: a83294 (馬岱)   2013-12-02 22:41:00
大家好,這個問題不知道應該是問Ruby還是問ajax..
最近在學習,寫了個網頁,目的是間隔10秒回傳數據跟顯示
每隔10秒生成新數據 -> 放入DB (postgresql) -> 從DB讀取最末項顯示
目前RoR那邊的架構已經完成,要顯示在用戶端時
用了hightchart的套件 http://www.highcharts.com/demo/dynamic-update
其中的程式碼 (節錄在下面)
y軸就是我要畫出的點,但我試了好幾個方法都沒辦法直接取用資料庫的資料
上網查了幾個方法,說可以用AJAX,但大多是ASP.net的(不會用= =)
也有人說RoR可以直接讀取..
$('#container').highcharts({
chart: {
type: 'spline',
animation: Highcharts.svg, // don't animate in old IE
marginRight: 10,
events: {
load: function() {
// set up the updating of the chart each second
var series = this.series[0];
setInterval(function() {
var x = (new Date()).getTime(), // current time
y = <%= Mydata.last.value %>;
series.addPoint([x, y], true, true);
}, 10000);
}
}
},
我目前是這樣寫,但很明顯的,y取不到值...
有沒有甚麼方法可以成功呢? 謝謝
作者: TonyQ (自立而後立人。)   2013-02-03 10:24:00
你要把資料先放到 client 去 再透過 JS 取值簡單作法,你先把那個變數的整個內容轉成 json string然後放到 javascript 寫個 var data= <%=json_str%>;之後再透過 data 這個 js obj 去 access.進階作法就是寫 json service 從 js 去撈...但如果你簡單作法都不會,進階作法只會讓你更 confuse XD
作者: qwer820404 (GB2)   2013-02-03 22:15:00
我最近用highchart開發了dashboard...但是用.net真的再不會再私信給我吧你client那邊 10秒的timer是有寫對 但是你用inline code的方式寫…當然會一直讀到一樣你的操控權在client,service那端要用一個service說錯 server那端 你要放一個service讓ajax可以呼叫

Links booklink

Contact Us: admin [ a t ] ucptt.com