如何解析红宝石中的这种数据格式

时间:2019-11-02 00:12:51

标签: ruby-on-rails ruby

在API请求之后,我正在获取以下数据,并且不确定如何从数据中获取link。有人帮忙吗?

#<ExampleApi::Results::GetTemporaryLinkResult:0x00007f9edf280c78 
@data={"metadata"=>{"name"=>"test.jpg", "id"=>"id:xxxxxxxx",
"link"=>"https://example.com/apitl/1/AnHQ08SIuxh9cdXL1q-EpG8L"}>

2 个答案:

答案 0 :(得分:2)

它是一个哈希,您可以通过键进行检索

@data["metadata"]["link"]

已编辑

class ExamplerResult
      attr_accessor :data
      def initialize()
        @data = {"metadata"=>{"name"=>"test.jpg", "id"=>"id:xxxxxxxx", "link"=>"https://example.com/apitl/1/AnHQ08SIuxh9cdXL1q-EpG8L"}}
      end
end

data = ExamplerResult.new.data
data["metadata"]["link"]

答案 1 :(得分:0)

对于哈希,您可以使用ruby 2.3中的dig @data.dig("metadata", "link")检索(嵌套)键

参考链接 https://ruby-doc.org/core-2.3.0_preview1/Hash.html#method-i-dig