Mongoose将默认设置为空对象

ma0*_*a08 30 mongoose

我试图将star_info属性设置为对象类型(混合模式)并将其默认值设置为空对象使用

star_info: { type : Schema.Types.Mixed, default : { }}
Run Code Online (Sandbox Code Playgroud)

在数据库中,star_info保存文档时没有字段.如何mongoose设置默认值?

小智 68

默认情况下(为了尽量减少MongoDB中存储的数据),Mongoose不会将空对象保存到数据库中.您可以通过在创建架构时将minimize标志设置为覆盖来覆盖此行为false.例如:

const schema = new Schema({
  star_info: { type: Schema.Types.Mixed, default: {} }
}, { minimize: false })
Run Code Online (Sandbox Code Playgroud)

现在star_info将默认为空对象并保存到数据库.

有关详情,请访问http://mongoosejs.com/docs/guide.html#minimize

  • 我想要生命的最后30分钟回来 (3认同)
  • 我尝试了这个,但得到:“无法自定义鉴别器选项最小化(只能修改 toJSON、toObject、_id、id)” (2认同)