创建包含对象数组的猫鼬模式

时间:2018-09-16 10:59:16

标签: express mongoose mongoose-schema mongoose-models

如何创建具有以下结构的猫鼬模式

 {
       data: {
        name: "John doe",
        attributes: [
          {
            text: "Sample text",
            created_at: "2018-08-23"
         },
        {
            text: "Sample text 2",
            created_at: "2018-08-23"
         }
        ],
       created_at: "2018-08-23"
     }
}

2 个答案:

答案 0 :(得分:0)

您可以尝试

const sampleSchema = new mongoose.Schema({
    data: {
        type: dataSchema
    }
});

const dataSchema = new mongoose.Schema({
    name: String,
    attributes: [attributeSchema],
    created_at: Date
});

const attributeSchema = new mongoose.Schema({
    text: String,
    created_at: Date
});

答案 1 :(得分:0)

这可以简单地通过对象数组来完成,而无需创建新模式。我不知道优化是否可能会涉及一些问题。

    attributes: [{
    text: String,
    created_at: Date
}], 

这是在官方的Mongoose文档之后进行的。