使用 Express.js 和 Mongoose 创建 MongoDB 数据模型

介绍

在现代 Web 应用程序中,访问数据库是至关重要的。MongoDB 是一个非常流行的 NoSQL 数据库,经常被用于建立 Web 应用。在这篇文章中,我们将学习如何使用 Express.js 和 Mongoose 来创建 MongoDB 数据模型。

关于 MongoDB 和 Mongoose

如果你还不熟悉 MongoDB 和 Mongoose,那么这里是一些简介。

MongoDB 是一个基于文档的 NoSQL 数据库。它在很多方面与传统的关系型数据库不同。它不使用表来存储数据,而是使用类似于 JSON 的文档格式。MongoDB 使用 JavaScript 作为它的查询语言。这意味着你可以用类似于 JavaScript 的语言来插入和查询文档。

Mongoose 是一个在 Node.js 环境中使用的 ODM(Object-Document Mapping)库。它允许你使用 JavaScript 对象来定义 MongoDB 数据集合的文档。Mongoose 提供了许多强大的功能,如验证、中间件、查询构建器等。

首先,我们需要在我们的应用程序中安装 Express.js 和 Mongoose。

$ npm install express mongoose

下面是在 Express.js 应用程序中使用 Mongoose 创建 MongoDB 数据模型的示例代码。

首先,我们需要在应用程序中引入 Mongoose 模块。

 const mongoose = require('mongoose');

接下来,我们需要定义一个 MongoDB 模式。

const schema = new mongoose.Schema({
  title: {type: String, required: true},
  content: String,
  author: String,
  created_at: Date,
  updated_at: Date
});

该模式定义了一个包含 titlecontentauthorcreated_atupdated_at 字段的模型。title 字段是必需的,因此我们将其设置为 required: true。所有其他字段都是可选的。

我们应该添加一些 Mongoose 中间件,以便在创建或更新文档时自动设置时间戳。

schema.pre('save', function (next) {
  const now = Date.now();
  this.created_at = now;
  this.updated_at = now;
  next();
});

schema.pre('update', function (next) {
  this.updated_at = Date.now();
  next();
});

接下来,我们需要编译 Mongoose 模型并导出它。

const Model = mongoose.model('Model', schema);
module.exports = Model;

使用上面的代码,我们定义了一个名为 Model 的 MongoDB 模型,并将其导出能够在我们的应用程序中使用。

总结

本文介绍了使用 Express.js 和 Mongoose 创建 MongoDB 模型的过程。我们学习了 MongoDB 和 Mongoose 的基础知识,以及如何使用它们在 Express.js 应用程序中进行数据建模。

学习了这些基本知识之后,你可以开始将它们应用到你的 Web 开发项目中。希望这篇文章能对你有所帮助。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65b08329add4f0e0ff9ded3f