0
我手动创建一个蒙戈集合的对象:如何的ObjectId属性添加到一个数组中的每个对象
{
"messages": [
{
"url":"http://test.test.com",
"message":"test message"
}
],
....other properties
}
我想一个_id:ObjectId()
添加到我的消息数组和每个每个项目收集文件。
我想:
collection.update({}, {
$set: {
'messages.$._id': ObjectId(),
},
}, { multi: true }
,但是这是行不通的。当我通过Mongoose添加新的时候,Id会被添加,但是这些都是手动输入到mongo中的。任何帮助表示赞赏。
我所有的数据有消息数组与他们的数据....不需要确保它存在。 – CSharpAtl
仔细检查我的答案,您需要在查询中包含数组字段,以便使用$运算符,这就是为什么,一个简单的解决方案是检查消息字段的存在。 – sergiuz