我想序列化和反序列化哈希。當散列被刪除時,這些鍵被去符號化;例如不是更多:一個,而不是「一個」。ActiveSupport :: JSON解碼哈希丟失符號
從鐵軌控制檯:
>>h = { :one =>1, :two => "two"}
{:one=>1, :two=>"two"}
>>j = ActiveSupport::JSON.encode(h)
"{\"one\":1,\"two\":\"two\"}"
>>h2 = ActiveSupport::JSON.decode(j)
{"one"=>1, "two"=>"two"}
>>h2[:one]
nil
>>h[:one]
1
我切換到使用Marshal.dump /負載現在。然而,我想把它放在那裏,看看是否有一種方法可以將它保存在JSON中(僅僅爲了便於閱讀)。
備註:這是不是象徵的鑰匙遞歸。 – TelegramSam 2011-04-04 20:48:49
也不適用於包含JSON對象的數組,即'[{'id':1},{'id':'2'},...]'。蒂姆卡爾解決方案工作壽。 – laffuste 2014-05-07 08:23:20