使用Mongoose在MongoDB中存储对象数组的正确方法是什么?

qcuzuvrc  于 2023-05-17  发布在  Go
关注(0)|答案(1)|浏览(167)

语言:Javascript,环境:Node JS,框架:Express & Library:獴
我正在开发一个应用程序,我需要以对象数组的形式在mongoDB文档中存储一些数据。
有两种不同的方法来做到这一点,一旦我搜索了互联网。
1.创建另一个子模式

const mongoose = require('mongoose');
const subSchema = new mongoose.Schema({
    name: String,
    age: Number
});

const schema = new mongoose.Schema({
    details: [subSchema]
});

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

1.创建嵌套对象

const mongoose = require('mongoose');
const schema = new mongoose.Schema({
    details: [{
        name: String,
        age: Number
    }]
});

那么,哪一种方法是正确的,应该使用?还有,这里面有没有隐藏的字符串?
PS:
我使用的是第二种方法,在存储数据时,details中的每个对象都有一个单独的ObjectID。这就是区别吗

pod7payv

pod7payv1#

因为你的问题是这两种方法有什么区别,我找到了 Mongoose 的一个有用的解释:
https://mongoosejs.com/docs/subdocs.html#subdocuments-versus-nested-paths

相关问题