Pretty print a JSON object created in Ruby to Chrome browser console
我正在将Ruby对象解析为JSON,将其呈现为JS.erb文件,并将其打印到控制台(Chrome浏览器)。
在js.erb文件中,当我打印此文件时:
1 | console.log("<%= @search.attributes.to_json %>") |
我明白了:
1 | {"id":124,"period_start":null,"period_end":null,"user_id":null,"created_at":"2015-01-04T05:54:05.133Z","updated_at":"2015-01-04T05:54:05.133Z","onscreen_people_rank_lower":null,"onscreen_people_rank_upper":null,"incl_onscreen_people_unranked":null,"offscreen_people_rank_lower":null,"offscreen_people_rank_upper":null,"incl_offscreen_people_unranked":null} |
号
很难读懂。我想让JSON更漂亮,这样我可以更容易地阅读它。
在js.erb文件中,我尝试了以下方法:
1 | console.log(eval("(" +"<%= @search.attributes.to_json %>" +")")) |
还有这个:
1 | console.log( jQuery.parseJSON("<%= @search.attributes.to_json %>") ) |
。
还有这个:
1 | console.log("<%= JSON.pretty_generate(@search.attributes) %>" ) |
但是没有工作——代码没有被计算,也没有输出。我做错什么了?
扩大对CBA Bhusal的回答,这对我最有效:
1 | console.log("<%= j JSON.pretty_generate(@search.attributes).html_safe %>"); |
号
需要
1 2 3 4 5 6 7 | { "id": 138, "user_id": null, "created_at":"2015-01-04T15:57:23.110Z", "updated_at":"2015-01-04T15:57:23.110Z" #... } |
很简单,试试这个
1 | console.log("<%= @search.attributes.to_json.html_safe %>") |