如何在Mongoose模式中描述对象来存储包括已定义的任何属性?

时间:2017-06-06 14:46:38

标签: mongodb mongoose mongoose-schema

如何描述Mongoose模式中的对象以存储任何属性,包括应该被索引的已定义属性?

我有Mongoose模式,其结构如下:



{
    a: { type: Object, require: true }
}




我不知道对象a中的所有字段,但我知道它包含字符串b,我应该在此字段创建索引。

我可以这样做:



{
    a: {
        b: { type: String, require: true, index: true }
    }
}




但在这种情况下,对象a的其他属性将丢失。

1 个答案:

答案 0 :(得分:1)

您可以在架构级别定义索引:

yourSchema.index({ "a.b": 1, type: 1 });