Mongoose 是 MongoDB 的对象数据建模 (ODM) 库。它定义了一个强类型模式,具有默认值和模式验证,稍后将其映射到 MongoDB 文档。
Mongoose Query API.prototype.then() 方法在执行查询后返回一个 Promise。如果在执行特定操作时发生任何情况,它将由 catch 块处理。
用法:
query.then(resolve).catch(reject)
参数:
- resolve: 没有错误时返回的函数。
- reject: 发生任何错误后返回的函数。
返回类型:该方法返回一个承诺。
Mongoose 模块的安装:
第 1 步:您可以访问安装 mongoose 模块的链接。您可以使用此命令安装此软件包。
npm install mongoose
步骤2:安装mongoose模块后,您可以使用命令在命令提示符中检查您的mongoose版本。
npm version mongoose
步骤 3:之后,您可以创建一个文件夹并添加一个文件,例如 index.js,要运行此文件,您需要运行以下命令。
node index.js
项目结构: 项目结构将如下所示:
示例集合:下面是函数执行之前数据库中的示例数据,您可以使用任何 GUI 工具或终端来查看数据库,就像我们使用 MongoDB compass GUI 工具一样,如下所示:
示例1:在此示例中,我们正在检索对拳击感兴趣的所有客户。
Javascript
// Importing the module
const mongoose = require('mongoose');
// Set Up the Database connection
mongoose.connect(
'mongodb://localhost:27017/geeksforgeeks', {
useNewUrlParser: true,
useUnifiedTopology: true
})
// Defining customerSchema schema
const customerSchema = new mongoose.Schema(
{ name: String, interest: Array, orderCount: Number }
)
// Defining customerSchema model
const Customer = mongoose.model(
'Customer', customerSchema);
//Finding the record in the collection
Customer.find({ interest: "boxing" }).then((res) => {
console.log(res)
});
运行应用程序的步骤:使用以下命令运行index.js 文件:
node index.js
示例2:在此示例中,我们通过在 find 方法中传递 String 来故意创建错误(需要一个对象才能完美运行)并使用捕获它。抓住( )。
Javascript
// Importing the module
const mongoose = require('mongoose');
// Set Up the Database connection
mongoose.connect(
'mongodb://localhost:27017/geeksforgeeks', {
useNewUrlParser: true,
useUnifiedTopology: true
})
// Defining customerSchema schema
const customerSchema = new mongoose.Schema(
{ name: String, interest: Array, orderCount: Number }
)
// Defining customerSchema model
const Customer = mongoose.model(
'Customer', customerSchema);
Customer.find("boxng").then((res) => {
console.log(res)
}).catch((err) => {
console.log("Man, You got an error")
console.log(err)
});
运行应用程序的步骤:使用以下命令运行index.js 文件:
node index.js
参考:https://mongoosejs.com/docs/api/query.html#query_Query-then
相关用法
- Mongoose Query.prototype.toConstructor()用法及代码示例
- Mongoose Query.prototype.all()用法及代码示例
- Mongoose Query.prototype.and()用法及代码示例
- Mongoose Query.prototype.batchSize()用法及代码示例
- Mongoose Query.prototype.box()用法及代码示例
- Mongoose Query.prototype.catch()用法及代码示例
- Mongoose Query.prototype.centerSphere()用法及代码示例
- Mongoose Query.prototype.circle()用法及代码示例
- Mongoose Query.prototype.collation()用法及代码示例
- Mongoose Query.prototype.cursor()用法及代码示例
- Mongoose Query.prototype.distinct()用法及代码示例
- Mongoose Query.prototype.exec()用法及代码示例
- Mongoose Query.prototype.explain()用法及代码示例
- Mongoose Query.prototype.geometry()用法及代码示例
- Mongoose Query.prototype.getOptions()用法及代码示例
- Mongoose Query.prototype.getPopulatedPaths()用法及代码示例
- Mongoose Query.prototype.getUpdate()用法及代码示例
- Mongoose Query.prototype.gt()用法及代码示例
- Mongoose Query.prototype.gte()用法及代码示例
- Mongoose Query.prototype.hint()用法及代码示例
- Mongoose Query.prototype.lean()用法及代码示例
- Mongoose Query.prototype.limit()用法及代码示例
- Mongoose Query.prototype.lt()用法及代码示例
- Mongoose Query.prototype.lte()用法及代码示例
- Mongoose Query.prototype.map()用法及代码示例
注:本文由纯净天空筛选整理自devi_johns大神的英文原创作品 Mongoose Query.prototype.then() API。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。