मैं JSON.pretty_generate()
प्राप्त करने के लिए वास्तव में रेल में सुंदर उत्पादन उत्पन्न करने के लिए नहीं कर पा रहे है।रूबी JSON.pretty_generate ... सुंदर unpretty
मैं रेल 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}"
लेकिन, मैं वास्तव में क्या चाहता हूं रेल इसे उत्पन्न करने के लिए है। क्या किसी के पास कोई सुझाव है कि मैं रेलवे में जनरेटर को सही ढंग से काम करने के लिए क्यों नहीं मिल सकता?
धन्यवाद!
@Amy, आपकी उदाहरण में कुछ विसंगतियां हो रहा है । '{" गाय "=> [1, 2, 3, 4], ...' वैध JSON मान्य नहीं है। जेएसओएन रूबी के '=>' के स्थान पर ':' का उपयोग करता है। क्या आप वास्तविक आउटपुट पेस्ट कर सकते हैं? –
इसके बारे में क्षमा करें। मैं एक टर्मिनल से काटने और चिपक रहा था जहां मैंने आउटपुट को एक डाल() के माध्यम से रखा था। उपरोक्त स्क्रिप्ट/कंसोल और आईआरबी से सटीक आउटपुट है। – Amy
क्या आप समझा सकते हैं कि आपको दूसरा आउटपुट कैसे मिलता है? (यानी लाइन JSON.pretty_generate (some_data) कहां है) – kikito