【发布时间】:2016-05-06 16:51:44
【问题描述】:
使用猫鼬,我正在尝试定义模式:
var BookSchema = new Schema({
author: String
});
var CarSchema = new Schema({
color: String
});
var ProductSchema = new Schema({
title: String,
type: String
});
我想根据type 字段的值在product 中包含car 架构或book 架构。这样最终的结果将如下所示:
[{
title: 'Think and grow rich',
type: 'book',
book: {author: 'Napoleon Hill'}
}, {
title: 'Toyota corolla',
type: 'car',
car: {color: 'red'}
}]
到目前为止,我发现了两个选项,都不是最佳选择:
- 在每个
product中都包含car和book。 - 在
product中使用Mixed架构类型。
还有其他选择吗?
【问题讨论】: