【发布时间】:2012-08-13 06:20:31
【问题描述】:
我有一个型号名称为Product 的Rails 应用程序具有price 属性
def index
@products = Product.all
我想绘制一个图表,x-axis 是产品 ID,y-axis 是产品价格。我将一个数组从控制器传递给app/assets/javascripts/products.js.coffee。数组是
[[product1.id, product1.price],
[product2.id, product2.price],
[product3.id, product3.price]]
我使用gon gem 来帮助我传递数据。以下是我更改控制器的方法:
def index
@products = Product.all
gon.prices = []
@products.each do |x|
gon.prices.append([x.id, x.price])
end
end
感谢gon gem,此gon.prices 将在app/assets/javascripts/products.js.coffee 中可用。
我的问题是,在控制器中创建数组数组似乎不是一个好习惯。我的问题是:无论如何我可以将整个 @products 传递给 javascript 并在 javascript 内部而不是在控制器内部提取数组?所以我可以做gon.products = @products
【问题讨论】:
-
AJAX 是将某些东西从服务器端代码传递到 JavaScript 的最佳方式。像 jQuery 这样的东西会让这很容易做到。
-
谢谢。能否请您提供更多详细信息?
标签: javascript ruby-on-rails model-view-controller charts