Ruby on rails 在ruby中打印嵌套数组中的单个元素
我有一个如下的数组Ruby on rails 在ruby中打印嵌套数组中的单个元素,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个如下的数组 attributes_array = {\"rules\":{\"Claim\":[1100,1100],\"Bookmark\":[800,800]}} 我正在尝试打印声明和书签,并在下面使用,但无法打印 第一: attributes_array.each do |var| puts var.inspect end 第二: attributes_array.each do |var| var.each do |val| puts val end en
attributes_array = {\"rules\":{\"Claim\":[1100,1100],\"Bookmark\":[800,800]}}
我正在尝试打印声明和书签,并在下面使用,但无法打印
第一:
attributes_array.each do |var|
puts var.inspect
end
第二:
attributes_array.each do |var|
var.each do |val|
puts val
end
end
任何线索将不胜感激 完善你的问题
attributes_array = { rules: { Claim: [1100, 1100], Bookmark: [800,800] } }
如果要查看所有值,请执行以下操作:
attributes_array[:rules].values_at(:Claim, :Bookmark)
#=> [[1100, 1100], [800, 800]]
如果要查看:Claim
或:Bookmark
的值:
attributes_array[:rules][:Claim]
#=> [1100, 1100]
attributes_array[:rules][:Bookmark]
#=> [800, 800]
attributes_array[:rules][:Claim].first
#=> 1100
attributes_array[:rules][:Bookmark].last
#=> 800
attributes_array[:rules].slice(:Claim)
#=> {:Claim=>[1100, 1100]}
attributes_array[:rules].slice(:Bookmark)
#=> {:Bookmark=>[800, 800]}
如果要查看:Claim
或:Bookmark
的特定元素:
attributes_array[:rules][:Claim]
#=> [1100, 1100]
attributes_array[:rules][:Bookmark]
#=> [800, 800]
attributes_array[:rules][:Claim].first
#=> 1100
attributes_array[:rules][:Bookmark].last
#=> 800
attributes_array[:rules].slice(:Claim)
#=> {:Claim=>[1100, 1100]}
attributes_array[:rules].slice(:Bookmark)
#=> {:Bookmark=>[800, 800]}
如果只想使用:Claim
或:Bookmark
进行哈希:
attributes_array[:rules][:Claim]
#=> [1100, 1100]
attributes_array[:rules][:Bookmark]
#=> [800, 800]
attributes_array[:rules][:Claim].first
#=> 1100
attributes_array[:rules][:Bookmark].last
#=> 800
attributes_array[:rules].slice(:Claim)
#=> {:Claim=>[1100, 1100]}
attributes_array[:rules].slice(:Bookmark)
#=> {:Bookmark=>[800, 800]}
这不仅仅是一个数组。它至少是一个包含多个数组的嵌套哈希。此外,转义的双引号看起来像是JSON字符串的一部分。你从哪里得到的数据结构?
attributes\u array.class
返回什么?预期的产出究竟是多少?