是否可以在Mongo shell中创建ObjectId?

时间:2016-05-03 06:44:15

标签: mongodb objectid mongo-shell

我直接在Mongo shell中更新包含嵌入文档数组的文档。我希望每个子文档都有一个_id字段,但这些字段不是自动创建的,因为它们适用于顶级文档。有没有办法简单地在Mongo shell中创建一个新的ObjectId?有些东西(下面的例子无效):

"prop": [
  {
    "_id": new ObjectId(), // creates the objectId when executing the line
    "foo": "bar"
  }
]

主要要求是不必为每个要创建的文档手动生成随机字符串。这可能吗?

1 个答案:

答案 0 :(得分:4)

是的,这是可能的。您可以生成ObjectId

ObjectId id = new ObjectId();

// or this
ObjectId id = ObjectId.get();

然后它可以用于更新文档。希望它有所帮助。