如何描述Mongoose模式中的对象以存储任何属性,包括应该被索引的已定义属性?
我有Mongoose模式,其结构如下:
{
a: { type: Object, require: true }
}

我不知道对象a
中的所有字段,但我知道它包含字符串b
,我应该在此字段创建索引。
我可以这样做:
{
a: {
b: { type: String, require: true, index: true }
}
}

但在这种情况下,对象a
的其他属性将丢失。
答案 0 :(得分:1)
您可以在架构级别定义索引:
yourSchema.index({ "a.b": 1, type: 1 });