为什么mongoosejs在未传递子文档时插入空值?

时间:2017-01-24 19:30:17

标签: mongodb mongoose

当未在mongodb中传递子文档信息时,它会插入一个带有null对象的空数组。 我在user.js文件中有一个用户(父模式)模式。这将充当包含用户详细信息的父架构。

mongoose.Schema({
  name:{ type: String ,required: true},
  address:[Address]
})

和另一个名为address.js的文件中的地址模式这是一个子模式,它是用户模式的一部分。

mongoose.Schema({
 city: { type: String}
})

现在在用户模式中我想将地址作为可选字段,并且在插入操作时没有数据传递时将其默认为清空数组。

当我插入而不提供子对象的数据时,预期文档应如下所示:

{
 name:"user111",
 address:[]
}

但我把它当作

{
 name:'user111',
 address:[null]
}

这是预期的行为吗?如何使架构允许空子文档?

0 个答案:

没有答案