📜  创建模型 Obejctid mongoose (1)

📅  最后修改于: 2023-12-03 14:50:15.896000             🧑  作者: Mango

创建模型 Objectid mongoose

在使用 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 还有很多强大的功能等待你去探索!