moogose使用

Mongoose是Node.js中用于MongoDB的数据建模工具,提供了模式定义、类型转换、验证等功能。本文深入讲解如何连接数据库、定义架构、创建模型、操作文档,包括查询、更新和删除等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概念

Node.js 的优雅 mongodb 对象建模

Mongoose 提供了一种直接的、基于模式的解决方案来对应用程序数据进行建模。它包括开箱即用的内置类型转换、验证、查询构建、业务逻辑挂钩等

安装

 npm i mongoose

具体例子

E:\Nextjs\mongoose-use-demo\app\api[crud]\route.ts

连接数据库

E:\Nextjs\mongoose-use-demo\lib\db.ts

import mongoose from 'mongoose';

export const connectDB = async () => {
    try {
        await mongoose.connect(process.env.MONGO_URI as string)
        console.log('db is connect with', mongoose.connection.host);
    } catch (error) {
        console.log("Error connecting to MongoDB: ", error);
    }
}

E:\Nextjs\mongoose-use-demo.env.local

MONGO_URI=mongodb://127.0.0.1:27017/mongoose-use-demo

定义架构(表中字段)

Mongoose 中的一切都始于架构。每个架构映射到一个 MongoDB 集合定义该集合 中 文档的形状

import mongoose from 'mongoose';
const { Schema } = mongoose;

const blogSchema = new Schema({
  title: String, // String is shorthand for {type: String}
  author: String,
  body: String,
  comments: [{ body: String, date: Date }],
  date: { type: Date, default: Date.now },
  hidden: Boolean,
  meta: {
    votes: Number,
    favs: Number
  }
});

https://mongoosejs.com/docs/guide.html

简单例子

const User = new Schema({
    name: String,
    age: Number,
    sex: String
});

代码将在每次测试之前尝试创建一个名为“ModelName”的新模型

用户架构

src/models/User.js

import mongoose from "mongoose";

const { Schema } = mongoose;

const 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值