所以我有这个测试脚本
require 'yaml'
hashYaml = YAML::load_file("./monFichier.yaml")
puts "hashYaml : "
puts hashYaml
hashManuel = {enonce: "ma question", titre: "mon titre" }
puts "hashManuel : "
puts hashManuel
其中./monFichier.yaml包含以下行:
- enonce: "ma question"
titre: "mon titre"
,输出为:
hashYaml :
{"enonce"=>"ma question", "titre"=>"mon titre"}
hashManuel :
{:enonce=>"ma question", :titre=>"mon titre"}
有人可以解释一下
hashYaml
相同的格式获取hashManuel
?干杯,
答案 0 :(得分:0)
所以我找到this answer,我检查了它是否正常工作。
按如下方式编辑Yaml文件:
- :enonce: "ma question"
:titre: "mon titre"
还有其他方法不涉及修改我的yaml文件吗? 是的,见下文
编辑:我正在寻找的答案
改编自this post
所以我的Yaml文件在Ruby中定义了一个哈希表。说,它写着:
- enonce: "ma question facile"
titre: "mon titre clair"
- enonce: "ma question dure"
titre: "mon titre obscur"
要在Ruby中导入此文件作为其键为符号的哈希列表,即{:myKey => "itsValue"}
(在我知道词汇之前我的意思是正确哈希)
一个可以如下进行:
require 'yaml'
hashYaml = YAML::load_file('./monFichier.yaml')
hashYaml.each do |currentHash| # I am really working with a table of hash(es)
currentHash.keys.each do |key|
currentHash[(key.to_sym rescue key) || key] = currentHash.delete(key)
end
end
干杯,