语言: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。这就是区别吗
1条答案
按热度按时间pod7payv1#
因为你的问题是这两种方法有什么区别,我找到了 Mongoose 的一个有用的解释:
https://mongoosejs.com/docs/subdocs.html#subdocuments-versus-nested-paths