0

我正在使用 gem“google_visualr”来绘制一些直方图。我拿了一个示例代码并尝试运行它,但我收到以下消息:undefined method `to_js' for nil:NilClass

我的控制器:

  def bar_chart

data_table = GoogleVisualr::DataTable.new
data_table.new_column('string', 'Year')
data_table.new_column('number', 'Sales')
data_table.new_column('number', 'Expenses')
data_table.add_rows(4)
data_table.set_cell(0, 0, '2004')
data_table.set_cell(0, 1, 1000)
data_table.set_cell(0, 2, 400)
data_table.set_cell(1, 0, '2005')
data_table.set_cell(1, 1, 1170)
data_table.set_cell(1, 2, 460)
data_table.set_cell(2, 0, '2006')
data_table.set_cell(2, 1, 660)
data_table.set_cell(2, 2, 1120)
data_table.set_cell(3, 0, '2007')
data_table.set_cell(3, 1, 1030)
data_table.set_cell(3, 2, 540) 

opts = { :width => 400, :height => 240, :title => 'Company Performance', vAxis: {title: 'Year', titleTextStyle: {color: 'red'}} }

@chart = GoogleVisualr::Interactive::BarChart.new(data_table, opts) 

end

我的 index.html.erb:

<script src='http://www.google.com/jsapi'></script> 
  <div id='chart'></div><%= render_chart @chart, 'chart' %>

我的错误在哪里?提前致谢

4

1 回答 1

0

你在点击 http://localhost:3000/[controller_name]/bar_chart 吗?

我相信你不是,你可能正在点击 controller#show 动作,这就是为什么视图找不到@chart(nil 类)。

于 2013-03-18T18:15:23.733 回答