首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails如何从嵌套的JSON数据中提取数据

Rails如何从嵌套的JSON数据中提取数据
EN

Stack Overflow用户
提问于 2021-07-25 06:13:22
回答 1查看 61关注 0票数 1

我正在尝试从这个嵌套的JSON数据中解析出我需要的值。我需要从quotas获取是responders,我需要从qualified获取是service_idcodes

我首先尝试只获取quotas,但一直收到以下错误[]': no implicit conversion of String into Integer

代码语言:javascript
复制
      hash = JSON::parse(response.body)
       hash.each do |data|
         p data["quotas"]
       end

Json数据

代码语言:javascript
复制
{
  "id": 14706,
  "relationships" : [
    {
      "id": 538
    }
  ]
  "quotas": [
    {
      "id": 48894,
      "name": "Test",
      "responders": 6,
      "qualified": [
        {
          "service_id": 12,
          "codes": [
            1,
            2,
            3,
            6,
          ]
        },
        {
          "service_id": 23,
          "pre_codes": [
            1,
            2
          ]
        }
      ]
    }
  ]
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-25 06:33:32

我需要把你的例子转换成json。然后我可以循环配额并输出值。

代码语言:javascript
复制
hash = JSON::parse(data.to_json)
hash['quotas'].each do |data|
  p data["responders"]
  data["qualified"].each do |responder|
    p responder['service_id']
    p responder['codes']
  end
end

Hash in data变量(示例代码工作所必需的):

代码语言:javascript
复制
require "json"

data = {
  "id": 14706,
  "relationships": [
    {
      "id": 538
    }
  ],
  "quotas": [
    {
      "id": 48894,
      "name": "Test",
      "responders": 6,
      "qualified": [
        {
          "service_id": 12,
          "codes": [
            1,
            2,
            3,
            6,
          ]
        },
        {
          "service_id": 23,
          "pre_codes": [
            1,
            2
          ]
        }
      ]
    }
  ]
}       
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68514162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档