2024-09-12 10:32:59 发布
网友
我有一个YML文件
e_yml: a: https://www.google.com:8201/jde/
因为我在大多数测试用例中都使用write和read-into-YML文件方法
但由于上述方法仅限于3个键和更多的硬编码,为了更通用,我尝试这种逻辑 在这里,它只将“value”写入YML文件
它不是更新key[a],而是只将值覆盖到YML中。你知道吗
key[a]
有人能帮我只更新钥匙吗?你知道吗
将值写入哈希的深度嵌套键。你知道吗
def deep_write(hash, value, *keys) hash.tap do |h| keys[0...-1].inject(h) { |h, k| h[k] ||= {} }[keys.last] = value end end
hash = {} deep_write(hash, '5678234', 'jde_env', 'py') #⇒ { "jde_env" => { "py" => "5678234" } }
def write(filename, value, *args) data = DataMagic.load(filename) File.write( File.join(YML_DIR_PATH, filename), deep_write(data, value, *args).to_yaml ) end
问题
将值写入哈希的深度嵌套键。你知道吗
解决方案
检查
用法
相关问题 更多 >
编程相关推荐