我正在使用Ruby on Rails 4,並試圖編寫需要填充服務器端數據的JavaScript。例如,我可能有一個名爲StudentsController的控件,我想從特定的類中返回所有特定的學生。所以在我的控制,我可能做的事:在Ruby on Rails 4.x中正確嵌入JavaScript變量
def index
@students = Student.all
end
然後我有一個/app/assets/javascripts/
腳本調用foo.js
,並在那裏我想通過自己的class_id
分裂學生了。
foo.js
$(function() {
var class_a = <%= @students.select { |s| s.class_id = 'a' }.to_json %>
var class_b = <%= @students.select { |s| s.class_id = 'b' }.to_json %>
})
問題
是class_a
爲空,當我檢查對事物的瀏覽器端。我假設foo.js
未鏈接到StudentsController
,並且沒有看到@students
。以這種方式連接JavaScript的正確方法是什麼,所以我可以通過服務器端對象訪問JavaScript變量?
嘗試使用坤寶石 – apneadiving