【问题标题】:Update json string after ruby parseruby解析后更新json字符串
【发布时间】:2016-07-27 03:09:30
【问题描述】:

我有一个 JSON 对象,我已经用 ruby​​ 解析了它。现在我需要用更改后的值更新 JSON 对象。我需要用新值“testing”更新 JSON_STR。这听起来可能很愚蠢,但我不会这样做。

require 'json'
obj = JSON.parse(JSON_STR) 
obj.each do |doc|
  doc["ref"] = "testing" 
end

【问题讨论】:

    标签: ruby json parsing


    【解决方案1】:

    将您尝试修改的文档存储为常量可能不是最好的做法,它会使事情变得更复杂,但可以做到。您只需要使用修改后对象的 JSON 序列化版本重新分配字符串的值:

    JSON_STR.replace(JSON.dump(obj))
    

    这只有在 JSON_STR 没有被冻结的情况下才有效,而且常量经常被冻结,所以当心你是否得到错误。

    作为注释obj 是一个非常糟糕的变量名称。试着解释它是什么。甚至entriesdocs 都在这里更好。

    【讨论】:

      猜你喜欢
      • 2011-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多