我加载了一个yaml,需要为它定义一个范围,以引用一个特定的节点。
myYaml = YAML.load_file('myfile.yml').with_indifferent_access
通常,我可以
myYaml[:first_node][:first_child][:second_child]
但是,我想把路径传递给一个方法来确定它的范围。我正努力做这样的事。
scope_path = [:first_node,:first_child,:second_child]
def scope(scope_path)
myYAML[scope_path]
end
#所以我需要代码将scope\u path参数转换为
myYaml[:first_node][:first_child][:second_child]
最佳答案
您可以简单使用Hash#dig
:
myYaml.dig(:first_node, :first_child, :second_child)
关于ruby - 使用方法参数引用YAML节点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56514744/