Mongoose Query.prototype.orFail()函数
Mongoose的 Query API.prototype.orFail() 方法是应用于Query对象的。它允许我们在没有与给定的过滤条件匹配的文档时抛出自定义错误。该方法接受一个参数来提供自定义错误消息。如果我们不提供任何参数且没有文档与过滤条件匹配,则 orFail() 方法将抛出DocumentNotFoundError错误。让我们通过一个示例来理解 orFail() 方法。
语法:
参数: 这个方法接受一个参数,如下所述:
- error: 用于指定新的自定义错误对象。
返回值: 这个方法返回查询对象,我们可以在其上调用回调函数。
设置Node.js Mongoose模块:
步骤1: 使用以下命令创建一个Node.js应用程序:
步骤2: 创建NodeJS应用程序之后,使用以下命令安装所需的模块:
项目结构: 项目结构将如下所示:
数据库结构:
数据库的结构将如下所示,以下数据库存在于MongoDB中。
示例1: 下面的示例演示了Mongoose连接的基本功能 **orFail()
** 方法。在这个示例中,我们正在查询字段 name 的值为 “Student4” 的文档,但是集合中没有找到这个文档。因此,最后我们得到了 DocumentNotFoundError 错误。
文件名:app.js
运行程序的步骤: 从项目的根目录中执行以下命令运行应用程序:
输出:
示例2: 下面的示例演示了Mongoose Connection的基本功能 orFail() 方法。在本例中,我们获取具有值“101”的字段 rollNumber 的文档,但集合未找到文档。因此,最后我们发送自定义错误消息。
文件名: app.js
运行程序的步骤:
要运行应用程序,请从项目的根目录执行以下命令:
输出:
参考: https://mongoosejs.com/docs/api/query.html#query_Query-orFail