gpt4 book ai didi

ruby-on-rails - 如何在 en.yml 中写入引用值?

转载 作者:数据小太阳 更新时间:2023-10-29 08:32:16 25 4
gpt4 key购买 nike

我正在编写一个脚本,它将向 en.yml 文件添加新的翻译。但是,当我将它们转储回文件时,我的字符串采用以下格式:

some_key: This is the value

我正在尝试使输出为:

some_key: "This is the value"

我正在这样写翻译:

File.open(yaml_file, "w") do |f|
f.write(translations.to_yaml)
end

其中 translations 是包含所有翻译的哈希值。

除了手动解析/重写 YAML 文件之外,还有什么方法可以添加这些引号吗?

最佳答案

plan (unquotes) scalar representation是标量类型不需要转义时的首选版本。

在你的例子中,字符串:

This is the value

不需要用引号引起来,因此,如果您提供以下 YAML:

 key: "This is the value"

处理器可能返回:

 key: This is the value

因为它们完全等价。然而,如果你真的想输入一个带引号的字符串作为值,那么你应该使用:

 key: '"This is the value"'

或者转义双引号:

 key: "\"This is the value\""

我快速浏览了 Psych emitter code ,由 to_yaml 调用的那个,似乎没有强制在标量上引用的选项。

我什至没有看到 scalar emitter 中实现的选项代码。

 def visit_Psych_Nodes_Scalar o
@handler.scalar o.value, o.anchor, o.tag, o.plain, o.quoted, o.style
end

换句话说,您不能强制引用。

关于ruby-on-rails - 如何在 en.yml 中写入引用值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20839230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com