我调查了不同的资源,但仍然对如何将json格式解析为自定义对象感到困惑,例如

class Resident
  attr_accessor :phone, :addr

  def initialize(phone, addr)
      @phone = phone
      @addr = addr
  end
end

和JSON文件
{
  "Resident": [
    {
      "phone": "12345",
      "addr":  "xxxxx"
    }, {
      "phone": "12345",
      "addr": "xxxxx"
    }, {
      "phone": "12345",
      "addr": "xxxxx"
    }
  ]
}

将json文件解析为3个Resident对象数组的正确方法是什么?

最佳答案

以下代码更简单:

require 'json'

data = JSON.parse(json_data)
residents = data['Resident'].map { |rd| Resident.new(rd['phone'], rd['addr']) }

关于ruby - 将json解析为对象ruby,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12723094/

10-12 15:04