1

意外to_json行为我有以下结构:Ruby on Rails的3.1:使用数组

a = { 'x' => [1,2,3] } 

在Rails 3.0红宝石1.8,转化成JSON按预期工作:

一.to_json

=> “{\” ×\ “:[1,2,3]}”

在Rails 3.1红宝石1.9.3p125,阵列被转换成一个散列:

a.to_json

=> “{\” ×\“:{\ “1 \”:null,\“2 \”:null,\“3 \”:null}}“

我找不到任何解释两个版本之间行为差异的文档,在Rails 3.1中保留预期输出的方式。任何线索?

+0

我在rails 3.1.3上测试了这个,它的第一个版本如''{\“x \”:[1,2,3]}'' – 2012-04-06 15:32:25

+0

我可能已经添加了Rails 3.1服务器运行ruby 1.9.3而Rails 3.0服务器运行ruby 1.8。我不认为它有效果。 – 2012-04-06 15:45:34

+0

我的3.1.3也在ruby 1.9.3上运行:) – 2012-04-06 19:25:10

回答

0

该问题实际上与安装在Gemfile上的其中一个gem相关,该gemfile对to_json调用返回不正确的结果。

感谢您的帮助。