在updateOne查询中找不到提供了Id的Mongoose文档时抛出异常

时间:2017-05-26 05:51:08

标签: node.js mongodb mongoose exception-handling

我在Mongoose中运行updateOne查询:

updateHackathonDetails(hackathonId, updatedHackathonData) {
    return Hackathon.updateOne(
        {hackathonId: hackathonId},
        {data: updatedHackathonData}
    ).exec();
}

当找不到包含hackathonId的文档时,它只会返回我:

  

{n:0,n修改:0,ok:1}

其中明确指出它无法修改文档,因为找不到它。现在我想要的是,如果找不到具有此Id的文档,此查询将抛出异常。当然,显而易见的方法是读取nModified如果它是0并手动抛出异常,但是Mongoose是否有内置方法来执行此操作?

由于我正在返回一个promise,理想情况下我应该能够在调用函数中的catch块中捕获异常。我想知道是否有办法只用猫鼬做这个?没有手动检查并抛出异常?

0 个答案:

没有答案