1

次のような複雑な入力 JSON があります。

@json = {"project":"bla",
    "analysis": {"id":"123","title":"Test"}, 
    "data":{"axis": {"name":"column", "label":"demo","values": ["one", "two"]},
           "series": [{"label":"text", "values":["1", "2", "3"]}, 
                    {"label":"text2", "values":["4", "5", "6"]}
]}}

(この例よりも複雑で長くなっています)

2 つの質問:

  1. json内の何かをオンザフライで削除できるRoRメソッドが存在しますか? @json.destroy['analysis']「分析」のキーと値のペアのみを排除するようなものは ありますか?

  2. シリーズの値を (たとえば) どのようにナビゲートできますか? json が a で単純であれば実行できますdo eachが、ここではdo each?の連結を行う必要があります。

4

1 に答える 1

1

JSON をハッシュに変換し、キーを削除してから、JSON に戻すことができます。

require "json"
hash = JSON.parse(@json)
hash.delete("analysis")
@json = hash.to_json
于 2012-10-25T14:16:06.607 に答える