我似乎無法得到JSON.pretty_generate()
實際上在Rails中生成漂亮的輸出。Ruby JSON.pretty_generate ...是非常有前景的
我使用Rails 2.3.5,它似乎自動加載JSON寶石。真棒。當使用script/console
這確實產生JSON:
some_data = {'foo' => 1, 'bar' => 20, 'cow' => [1, 2, 3, 4], 'moo' => {'dog' => 'woof', 'cat' => 'meow'}}
some_data.to_json
=> "{\"cow\":[1,2,3,4],\"moo\":{\"cat\":\"meow\",\"dog\":\"woof\"},\"foo\":1,\"bar\":20}"
但這不會產生漂亮輸出:
JSON.pretty_generate(some_data)
=> "{\"cow\":[1,2,3,4],\"moo\":{\"cat\":\"meow\",\"dog\":\"woof\"},\"foo\":1,\"bar\":20}"
我發現生成是用irb
和的唯一途徑加載「純」版本:
require 'rubygems'
require 'json/pure'
some_data = {'foo' => 1, 'bar' => 20, 'cow' => [1, 2, 3, 4], 'moo' => {'dog' => 'woof', 'cat' => 'meow'}}
JSON.pretty_generate(some_data)
=> "{\n \"cow\": [\n 1,\n 2,\n 3,\n 4\n ],\n \"moo\": {\n \"cat\": \"meow\",\n \"dog\": \"woof\"\n },\n \"foo\": 1,\n \"bar\": 20\n}"
但是,我真正想要的是Rails產生這個。有沒有人有任何提示,爲什麼我不能讓Rails中的生成器正常工作?
謝謝!
@Amy,似乎是在你的例子一些不一致的地方。 '{「cow」=> [1,2,3,4],...'不是有效的JSON。 JSON使用':'代替Ruby的'=>'。你能粘貼實際輸出嗎? – 2010-04-02 16:17:56
對不起。我正在從終端輸入put()來剪貼。以上是腳本/控制檯和irb的確切輸出。 – Amy 2010-04-03 00:22:10
你能解釋你如何得到第二個輸出嗎? (即JSON.pretty_generate(some_data)行) – kikito 2010-04-03 16:05:52