Mongoose文档数组不更新

我有一个子数组的文档:

{ 'username': "student1", 'appointment_requests': [ {'semester': "SPRING 2015", ...}, ... ] } 

这不起作用:

 user_model.update( { 'username': "student1", 'appointment_requests.semester' : 'SPRING 2015' }, { $set: {'appointment_requests.$.status': this.REASSIGNED_STATUS, 'appointment_requests.$.submitted': moment().format()}}, console.log ); 

这样做(如果我将文档更改为“SPRING2015”):

 user_model.update( { 'username': "student1", 'appointment_requests.semester' : 'SPRING2015' }, // GOT RID OF SPACE!! { $set: {'appointment_requests.$.status': this.REASSIGNED_STATUS, 'appointment_requests.$.submitted': moment().format()}}, console.log ); 

难道我做错了什么? 这是一个众所周知的缺陷吗? 谢谢你的帮助!

编辑:

在这两种情况下,我得到:

null 1 { ok: true, n: 1, updatedExisting: true }

但是,当我使用“SPRING 2015”时,它不起作用!

当我尝试使用更新为一个不存在的学生,我得到:

null 0 { ok: true, n: 0, updatedExisting: true }

所以Mongoosefind文档,但Mongo从不更新文档?

编辑:

我用控制台编辑它,相同的结果…

看起来像Mongo的bug?

编辑:

没有时间去debuggingMongo,使用手动查找和更新/保存工作…

       

网上收集的解决方案 "Mongoose文档数组不更新"