如何在以后的MongooDB /中保存父文档中的子文档?

时间:2018-06-08 11:27:54

标签: node.js mongodb mongoose mongoose-schema

我跟随MongoDB使用Node.js项目(使用Mongoose),我希望我的MongoDB document具有非常复杂的模式,

我的实现(和架构)看起来像:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;

const carSchema = new Schema({
   brand: String,
   year: Number,
   nickname: String
});
const bookSchema = new Schema({
   title: String,
   published: Number,
   author: String
});
const memberSchema = new Schema({
  username: String,
  cars: [ carSchema ],
  books: [ bookSchema ]
});

const Member = mongoose.model('member', memberSchema);

// Notice: Here we just create new document without providing any cars or books
const newMember = new Member({
  username: 'jonsnow',
});
await newMember.save();

我想要实现的是我想在不同时间保存document的不同部分。

在上面的代码段中,我只是将一个新文档保存到只包含username,没有carsbooks已保存或提供的MongoDB,因为我想这样做后面。

我的问题是如何在以后使用carbook保存member对象或carSchema对象{/ 1}}。

或者,换句话说,假设我有以下对象

bookSchema

如何将此对象放入包含const carOne = { brand: 'Audi', year: '2018', nickname: 'The Slowest' } 的{​​{1}}内,并将其放在document的{​​{1}}字段/属性中?

0 个答案:

没有答案