【发布时间】:2015-09-14 13:07:31
【问题描述】:
我正在尝试将一个文档(我猜是一个子文档)嵌入到 Mongoose 架构中。我一直在遵循Mongoose documentation 建议的这种模式。我的架构如下所示。
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 中的类别键设置默认值。我尝试了以下并得到错误“TypeError:无法读取未定义的属性'$__'”:
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]
});
我还尝试了以下方法,得到了错误“SyntaxError: Unexpected token”:
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]
});
任何建议或文档将不胜感激。
谢谢,
【问题讨论】: