mongoose.findOneAndUpdate 返回 null

use*_*079 6 javascript mongoose mongodb node.js mean-stack

我正在使用 mongoose.findOneAndUpdate() 方法来插入和更新集合中的文档。但是,如果表中没有要更新的内容并且创建了新文档,则 findOneAndUpdate() 回调将返回 null。

我怎么知道 findOneAndUpdate() 的插入部分是否成功?

TimeTable.getTimeTableModelObject().findOneAndUpdate({ageGroup:'2'}, timeTable, {upsert:true}, function(err, foundData){});
Run Code Online (Sandbox Code Playgroud)

str*_*str 4

请参阅文档: http://mongoosejs.com/docs/api.html#query_Query-findOneAndUpdate

可用选项

new: bool - 如果为 true,则返回修改后的文档而不是原始文档。默认为 false

[...]

err另外,您可以在回调函数中检查。

  • 插入后它不会返回新文档。我已经在使用 upsert=true (2认同)