我有一个红宝石哈希,说
h={name: "john", age: "23"}
它不是一个对象,只是一个从对象创建的哈希。我想在访问对象时使用method属性访问其值。即:
h.name => "john"
h.age => 23
是否可以这样做?
答案 0 :(得分:9)
在您的情况下,使用openstruct
会很方便require 'ostruct'
h = OpenStruct.new(name: "john", age: "23")
h.name #=> "john"
h.age #=> 23
答案 1 :(得分:3)
也许这就是你要找的东西
item = Struct.new(:id, :name)
item.new(1, 'Name')