在包含 mongoid 对象 ID 的 Hash 或 Array 上使用 to_json 时,ID 不会在 JSON 中转义。我必须将其转换为字符串。因此,每次我对包含 ObjectID 的哈希或数组进行序列化时,生成的 JSON 格式都是错误的。
我正在使用带有 Rails 4 的 Mongoid 4 master。
[26] pry(main)> [Moped::BSON::ObjectId.new].to_json
=> "[51d2f368d0068664e0000002]"
[27] pry(main)> [Moped::BSON::ObjectId.new.to_s].to_json
=> "[\"51d2f425d0068664e0000003\"]"