在创建文档时,我发现一个非常奇怪的行为
export const questionSchema: Schema<IQuestion> = new Schema<IQuestion>(
{
questionLevel: {
type: Schema.Types.Number,
index: true
},
answer: {
type: Schema.Types.String
},
translations: [
{
language: {
type: Schema.Types.String
},
question: {
type: Schema.Types.String
}
}
]
},
{ timestamps: true, collection: EDb.QUESTION_MODEL_NAME, minimize: false }
);
当我尝试保存新文档时:
new this.model(newData).save()
文档已创建但没有数组
但是如果我将代码更改为
const newData: any = new this._model();
for (const key in data) {
newData[key] = data[key];
}
return newData.save();
一切正常!
答案 0 :(得分:0)
猫鼬不会显示一个空数组。如果您的模型模式有一个数组字段,但是在保存文档时,如果您没有向该数组中添加任何元素,则除非该数组中添加了一个元素,否则它不会显示该数组。