将Rails JSON变量传递给javascript变量

时间:2014-03-15 08:34:30

标签: javascript ruby-on-rails json erb

我的Ruby on Rails控制器中有一个Global JSON变量。 它看起来像 @rails_side_json = {:name => ' Will',:age => 23} .to_json

我希望将其分配到我的javascript变量( var javascript_side_json ),该变量位于名为custom.js.erb的javascript文件中

完成赋值后javascript_side_json变量中的值应该等同于我的写作 var javascript_side_json = {" name":" Will"," age":23};

我无法通过编写 var javascript_side_json =<%= @rails_side_json%>

来实现这一目标

我怎样才能做到这一点? 我是否需要在多个文件中进行更改?

2 个答案:

答案 0 :(得分:20)

你差不多完成了。只需要确保你的json是安全的html:

var javascript_side_json = <%= @rails_side_json.html_safe %>;

var javascript_side_json = <%=raw @rails_side_json %>;

答案 1 :(得分:9)

默认情况下,JSON将被转义。您可以使用raw

告诉视图在代码中使用
var javascript_side_json = <%= raw @rails_side_json %>