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
返回什么?预期的产出究竟是多少?