我使用的是mongo db 2.6,我有一个用户集合。 用户Schema有一个"电子邮件"字段,这是我记录的唯一键。 在某些阶段我必须更改密钥,所以我这样做,但似乎在那之后使用该新密钥的findOne失败了:
var userObject = {"email" : "test123@gmail.com", ....}
var oldEmail = "tmp_email_123";
User.updateAsync({email: oldEmail},{$set : userObject))
.then (function( affected) {
User.findOneAsync({ 'email' : userObject.email}) <---- this returns null
})
但是,在mongo控制台中对数据库运行时,显示更新成功
db.users.find({"email":"test123@gmail.com"}) <---- returns the updated record.
有任何线索可能会发生这种情况吗? 我一直在寻找和删除这段代码几个小时,没有任何线索。
谢谢! d。