我想转换以下哈希...
a = {
"foo": {
"bar": {
"baz": [
"22"
]
}
}
}
为:
a = {
"foo": {
"bar": {
"baz": "22"
]
}
}
}
当我跑步时:
puts "DEBUG: #{a['foo']['bar']['baz'].join(',')}"
输出正常。
但是,当我尝试像这样替换哈希中的数组时:
a['foo']['bar']['baz'].join!(',')
它死于:
hash.rb:18:in <main>': undefined method
加入!&#39; for [&#34; 22&#34;]:Array(NoMethodError)
任何提示都将不胜感激。
答案 0 :(得分:3)
你需要这样做:
a['foo']['bar']['baz'] = a['foo']['bar']['baz'].join(',')
您无法更改对象的类,因此没有join