我有以下的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