我有一个类似于以下结构的文档:
{
"_id" : ObjectId("52263922f5ebf05115bf550e"),
"Fields" : [
{
"Field" : "Lot No",
"Rules" : [ ]
},
{
"Field" : "RMA No",
"Rules" : [ ]
}
]
}
我已经尝试使用以下代码更新,将其推入Rules数组中,该数组将保存对象。
db.test.update({
"Fields.Field":{$in:["Lot No"]}
}, {
$addToSet: {
"Fields.Field.$.Rules": {
"item_name": "my_item_two",
"price": 1
}
}
}, false, true);
但我遇到了以下错误:
无法使用字符串字段名 [Field] 追加数组
如何进行更新?
$addToSet
操作符中有一个多余的Field
。请尝试使用$addToSet: { "Fields.$.Rules": ...
- Philipp