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 に答える