我正在使用findAndModify命令来维护一个undo / redo命令列表。我正在使用“fields”标签来指定“之前”值。然后使用它来构建撤消命令。即:
CMD:
{
findAndModify : "aaa",
query : { _id: ObjectId('5215f7d1fe789bb17427bde9') },
update : { "$set" : { "v1" : 200 } },
fields : { v1 : 1, _id : 0 }
}
建立结果:
"Do" : { "$set" : { "v1" : 200 } },
"Undo" : { "$set" : { v1" : 100 } }
但是,我无法使这个工作适用于数组。我做了这样的set命令:
{ $set : "myArrayVar.3" : 100 }
我尝试过使用像
这样的投影{ "myArrayVar.3" : 1 }
{ "myArrayVar.$" : 1 }
但两者都只返回空数组括号:
{ myArrayVar : [] }
我错过了什么?
答案 0 :(得分:0)