将Rails JSON变量传递给javascript变量

use*_*637 12 javascript json ruby-on-rails 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%>来实现这一点

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

Mun*_*sim 24

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

var javascript_side_json = <%= @rails_side_json.html_safe %>;
Run Code Online (Sandbox Code Playgroud)

要么

var javascript_side_json = <%=raw @rails_side_json %>;
Run Code Online (Sandbox Code Playgroud)


Zer*_*ber 9

默认情况下,JSON将被转义.您可以使用代码告诉视图使用raw

var javascript_side_json = <%= raw @rails_side_json %>
Run Code Online (Sandbox Code Playgroud)