转储散列时, :symbol_keys
选项在作为false
传递时似乎没有任何效果,例如:
require 'oj'
# notice the ':' prefix of they key
puts Oj.dump({:abc => 123}, :symbol_keys => false)
#=> {":abc":123}
# same result
puts Oj.dump({:abc => 123}, :symbol_keys => true)
#=> {":abc":123}
这是预期的行为吗?
这是预期的行为。 symbol_keys 选项仅适用于加载。
如果我有一个带有符号键的散列,我想转储到没有冒号前缀的 JSON,你有什么建议? 我可以在散列上递归地对键进行字符串化,但这似乎不是很高效。 想法?
OJ 可以使用 4 种模式进行倾倒。 这是为了帮助人们找到从 Ruby 到 JSON 的正确转换级别。 :compat 模式会将符号转换为字符串。 尝试这个
Oj.dump({a:1,b:2}, 模式: :compat)
在2012年12月12日,在上午03时21分,特雷沃-罗[email protected]写道:
如果我有一个带有符号键的散列,我想转储到没有冒号前缀的 JSON,你有什么建议? 我可以在散列上递归地对键进行字符串化,但这似乎不是很高效。 想法?
—
直接回复此邮件或在 GitHub 上查看。
最有用的评论
OJ 可以使用 4 种模式进行倾倒。 这是为了帮助人们找到从 Ruby 到 JSON 的正确转换级别。 :compat 模式会将符号转换为字符串。 尝试这个
Oj.dump({a:1,b:2}, 模式: :compat)
在2012年12月12日,在上午03时21分,特雷沃-罗[email protected]写道: