2013-07-02 4 views
1

Lors de l'utilisation de to_json sur un tableau Hash ou Array contenant des ID objet mongoïdes, l'ID n'est pas échappé dans le JSON. Je dois le lancer comme une ficelle. Pour que chaque fois que je mets en série des hachages ou des tableaux contenant des ObjectID, le JSON résultant soit mal formé.ID objet Mongoid non échappé dans JSON généré par to_json

J'utilise maître MongoId 4 avec Rails 4.

[26] pry(main)> [Moped::BSON::ObjectId.new].to_json 
=> "[51d2f368d0068664e0000002]" 

[27] pry(main)> [Moped::BSON::ObjectId.new.to_s].to_json 
=> "[\"51d2f425d0068664e0000003\"]" 

Répondre

2

Il semble être résolu sur la Direction Maître

[Moped::BSON::ObjectId.new].to_json 
=> "[{\"$oid\":\"51d2ff0322cf02e1a5000001\"}]" 

ObjectId dans MongoDB est plus d'une chaîne. Il pourrait donc être judicieux de le convertir en chaîne avant cela.