我有以下的Ruby模塊:迭代哈希常量在Ruby中
module Test
Constant1 = {
:key1 => :value1,
:key2 => :value2
}
Constant2 = {
:key1 => :value1,
:key2 => :value2
}
end
,我試圖通過宣佈哈希迭代常量,打印用下面的代碼中定義的所有鍵:
Test.constants.each do |constant|
constant.keys.each do |key|
puts "key: #{key}"
end
end
但我得到NoMethodError: undefined method 'keys' for "Constant2":String
,我不知道如何將String
轉換成真正的costant。任何人都知道如何做到這一點?
謝謝,這解決了我的問題。 – Pablo 2011-12-21 12:36:26