最初,我的Sails / Mongo将ObjectID存储在数据库中,如下所示:
"_id" : ObjectId("557077fb836bdee256004232")
不确定发生了什么变化或发生了,但现在新的记录存储如下:
"_id" : {
"_bsontype" : "ObjectID",
"id" : "UtÓ-Åß\u0010C&5",
"generationTime" : 1434552692
}
这仅发生在6个开发者环境中。
我检查过的事情:
如果有任何特定内容可以提供帮助,我会非常乐意分享配置/日志。环境:节点0.12.4,npm v2.11.2,MongoDB shell v3.0.4。我已经调试了代码和所有内容,我非常确定它是我的环境所特有的,以及它如何与Mongo / Sails / Waterline / BSON交互。
我希望这更像是“嘿,我以前见过这个,这就是我解决它的问题”而不是实际的代码/调试问题!谢谢!
答案 0 :(得分:2)
回答我自己的问题!
MongoDB的Brew安装似乎发生了一些愚蠢的事情。从http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/手动重新安装它然后恢复我备份的数据库似乎可以解决问题。
我仍然希望从代码/技术角度了解为什么我的环境突然决定开始返回12-byt BSON ObjectID而不是十六进制ObjectID ...但是直到那时希望简单的手动重新-install将帮助其他遇到这个奇怪问题的人!