【发布时间】:2026-02-03 08:40:02
【问题描述】:
我有以下 mongo 条目:
et = {
languages: [{
code: String,
title: String,
tools: [{
description: String,
mds: [ObjectId]
}],
}]
//some more stuff
}
我现在需要更新这个对象并将一个新的 ObjectId 添加到 mds 数组中。我需要通过代码元素指定语言元素,并通过描述参数指定工具条目。
到目前为止,我想出了以下更新方法,我可以使用它更新正确语言条目的某些元素:
ETs.find({
'_id':mdAttributes.etID,
'languages':{'$elemMatch':{'code':mdAttributes.language}}
},{
'$set':{
'languages.$.title':'update2.jpg'
}
});
但是我不知道如何为正确的工具添加查询。
所以我的套装应该是这样的:
ETs.find({
'_id':mdAttributes.etID,
'languages':{'$elemMatch':{'code':mdAttributes.language}}
},{
'$set':{
'languages.$.tools.$.mds': ["newId"]
}
});
有没有办法在 mongo 中实现这一点?
【问题讨论】:
标签: mongodb mongodb-query