我有一个嵌套的哈希,如: -
profile:
status:
nil: 3
x: 2
priority:
x: 2
y: 2
有没有办法设置状态的默认值,如: -
profile:
status:
default:0
nil: 3
x:2
我不想要这些或任何其他方法的解决方案: -
h = Hash.new("Go Fish")
h.default = "Go fish"
因为我有一个yml文件加载了configs hash和其他映射哈希,比如上面的状态,优先级映射。所以我的脚本从这些yml中提取配置以及其他哈希值并使用它们。现在对于状态和优先级映射,我需要这个状态和优先级subhash,如果它在这个哈希中找不到任何匹配的符号(即,如果不存在这样的映射),则返回一个值。我可以使用其他方法在代码中设置该默认值。但重点是我希望任何外行编辑这个yml并能够运行我的脚本。因此,我希望在此处设置默认值。
答案 0 :(得分:2)
由于似乎没有人提出替代方案,现在我已采用这种方法。
profile:
status:
default: 'x' number
one: 1
two: 2
three: 3
代码中的
profile['status'].default=priority['status']['default']