我正在尝试在我的RoR 4应用程序中将模型数据嵌入到一些
javascript中.控制器正在为模型数据生成
JSON,如此…
def my_controller_method @person = Person.find(params[:id]) @person_json = @person.to_json(only: [:name,:id]) end
我想在我不引人注目的javascript中使用json来使用JSON.parse()创建javascript对象…
var personJSON = <%= j @person_json %>; var person = JSON.parse(personJSON);
但是生成的javascript是……
var personJSON = {\"id\":1,\"name\":\"fred\"}; var person = JSON.parse(personJSON);
并且javascript默默地失败了.
在搜索解决方案时,我找到了this question asked on SO,但是当我尝试使用html_safe方法时,我的rails app崩溃说html_safe是一种未知方法.
在此先感谢您的帮助!
解决方法
那这个呢:
var personJSON = <%= @person_json.to_json.html_safe %>
要么
var personJSON = <%= raw @person_json %>
我认为最后一个选项对你的特定情况更好.