1.RailsからJavaScriptへデータを渡す。
サーバサイドで生成したデータを、フロントエンドで使いたいといったことは、良くあると思います。
Rails⇒Javascript,jQueryの環境であればGon gemがおすすめです。
2.Gon gemのインストール
Gemfileに以下の行を追加して、$ bundle installを実行。
gem 'gon'
3.利用方法
application.html.erbのヘッダに以下の一行を埋め込みます。
rb:views/layouts/application.html.erb
<%= include_gon %> #add
<%= javascript_include_tag "application" %>
<%= stylesheet_link_tag "application" %>
controller側で、JavaScriptに渡したいデータをgonオブジェクトに格納する。
rb:your_controller.rb
def hoge
gon.hoge_list = your_list
gon.hoge_name = your_name
end
4.実行結果
ブラウザで開くと以下のようにgonオブジェクトに格納したデータがソースに埋め込まれます。
//<![CDATA[
window.gon={};gon.hoge_list=[[hoge1,hoge2],[hoge3,hoge4]];gon.hoge_name="hoge";
//]]>
JavaScript側では以下のように記載すれば、gonに格納したデータを利用できます。
js:your_js.js
var = gon.hoge_list;
var = gon.hoge_name;
以下を参考にさせていただきました。
http://qiita.com/mosa_siru/items/e69eee47a183b13cfb62