0
我想嵌入一个文档,所以我猜一个子文档,到Mongoose架构。我一直遵循Mongoose documentation提出的这种模式。我的模式看起来像这样。Mongoose Schema嵌入文档默认
var CategoriesSchema = new Schema({
name: { type: String, required: true, default: 'default' }
});
var PostSchmea = new Schema({
title: { type: String, required: true, default: 'default title' },
writtenBy: { type: ObjectId, required: true, default: '55878003ebf4b06110ef2ff8' },
publishedOn: { type: Date, default: Date.now },
updatedOn: Date,
published: { type: Boolean, required: true, default: false },
content: { type: String, required: true, default: 'empty' },
category: { type: [CategoriesSchema] },
tags: [String],
images: [String]
});
正如您所看到的,我已将CategoriesSchema嵌入到PostSchema中。我的问题是如何为PostSchema中的类别键设置默认值。我尝试以下,并得到了错误“类型错误:无法读取属性未定义‘$ __’”:
var PostSchmea = new Schema({
title: { type: String, required: true, default: 'default title' },
writtenBy: { type: ObjectId, required: true, default: '55878003ebf4b06110ef2ff8' },
publishedOn: { type: Date, default: Date.now },
updatedOn: Date,
published: { type: Boolean, required: true, default: false },
content: { type: String, required: true, default: 'empty' },
category: { type: [CategoriesSchema], default: [CategoriesSchema] },
tags: [String],
images: [String]
});
而且我也试过以下,并得到了错误“语法错误:意外令牌”:
var PostSchmea = new Schema({
title: { type: String, required: true, default: 'default title' },
writtenBy: { type: ObjectId, required: true, default: '55878003ebf4b06110ef2ff8' },
publishedOn: { type: Date, default: Date.now },
updatedOn: Date,
published: { type: Boolean, required: true, default: false },
content: { type: String, required: true, default: 'empty' },
category: { type: [CategoriesSchema], default: new CategoriesSchema(name: "default") },
tags: [String],
images: [String]
});
任何建议或文件将不胜感激。
谢谢,
感谢您的回答!我要测试一下,如果有效,我会告诉你。再次感谢! –
这不适用于猫鼬4+。 存在嵌入文档无法识别父文件的问题 – lobengula3rd