我目前正在尝试使用mongoose设计一个模式结构,如下所示:
var hubSchema = new mongoose.Schema({
//some other properties
dataStream: {
dataType: String,
dataPoints: [{
createdAt: { type: Date, expires: '7d'}
data: {}
}],
storeStrategy: {
type: String,
enum: storeStrategies
}
},
});
mongoose API文档说:
子文档享有与普通文档相同的所有功能。该 唯一的区别是他们没有单独保存,他们是 保存顶级父文档时保存。
我希望dataPoints是一个子文档数组,每个子文档都应该将TTL设置为普通文档。话虽如此,我从other posts发现,无法设置过期'对于子文件。所以我的问题是:我应该为dataPoints创建一个单独的模型并在此处存储引用,或者我应该实现一些自定义策略来删除保留这种结构的子文档?