也许我完全错了,但是自从我今天开始的项目以来,当我使用meteor mongo直接连接到mongodb并插入一条记录(使用mycol.insert(..)时,_id字段被ObjectId(“12345555”包围) ...”)。
从代码添加记录时,情况并非如此。
因此,通过 Meteor Mongo 添加的记录在应用程序内不再被识别。
我过去经常这样做......
这里发生了什么事?
这就是 MONGO 方式,您看到这一点是因为您使用的是 Mongo shell。 Meteor 默认采用不同的方法(参见下文),您在以编程方式使用它时会看到该方法。检查 Meteor 文档new Mongo.Collection
id一代 String
生成该集合中新文档的 _id 字段的方法。可能的值:
- 'STRING':随机字符串
- 'MONGO':随机 Mongo.ObjectID 值
默认 id 生成技术是“STRING”
在 Meteor 中,如果你写
Steffo = new Meteor.Collection("steffo", {idGeneration: 'STRING'});
这将导致条目
{ "foo" : "bar", "_id" : "68FWFNGRAuRt82pWy" }
如果你使用
Paul = new Meteor.Collection("paul", {idGeneration: 'MONGO'});
你会得到
{ "foo" : "bar", "_id" : ObjectId("26cfdb5f200adfa0b55a50d3" }
当您使用 Mongo shell 时会发生后者。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)