📅  最后修改于: 2023-12-03 14:50:15.896000             🧑  作者: Mango
在使用 MongoDB 和 Mongoose 进行开发时,经常需要使用 ObjectID 作为唯一标识符来插入和查询文档。本文介绍如何使用 Mongoose 创建包含 ObjectID 的模型。
首先,不要忘记在你的项目中安装和引入 Mongoose:
const mongoose = require('mongoose');
然后,使用 mongoose.Schema
来定义模型的结构。在这个结构中,我们可以指定属性的类型、默认值、验证规则等。
const schema = new mongoose.Schema({
name: {
type: String,
required: true
},
age: {
type: Number,
min: 18,
max: 60
},
_id: {
type: mongoose.Schema.Types.ObjectId,
default: mongoose.Types.ObjectId
}
});
上面的代码定义了一个包含 name
(必填)、age
(18~60之间的数字)、_id
(ObjectID) 属性的模型。其中,_id
属性使用 mongoose.Schema.Types.ObjectId
来指定类型,并且使用 default
属性来指定默认值。在这个例子中,我们使用了 mongoose.Types.ObjectId
来生成一个新的 ObjectID。
最后,使用模型来创建和查询文档。
const Model = mongoose.model('Model', schema);
async function createDocument() {
const doc = await Model.create({ name: 'John', age: 20 });
console.log(doc);
}
async function findDocument() {
const doc = await Model.findOne({ _id: '615cf4221c06e928dfaf60d6' });
console.log(doc);
}
在上面的代码中,我们使用 mongoose.model
来创建一个模型,并将其命名为 Model
。然后,我们可以使用 Model.create()
来创建一个新的文档,或者使用 Model.findOne()
来查询一个已有的文档。
这就是使用 Mongoose 创建包含 ObjectID 的模型的基本步骤。当然,Mongoose 还有很多强大的功能等待你去探索!