首页 > 请教一个mongoose数组嵌套的问题

请教一个mongoose数组嵌套的问题

假设存入mongo里面的数据是这样的:

{
  "a": 1,
  "b": 2,
  "c": [
    [
      {
        "d": 3,
        "e": 4
      },
      {
        "d": 4,
        "e": 5
      }
    ],
    [
      {
        "d": 6,
        "e": 7
      },
      {
        "d": 8,
        "e": 9
      }
    ]
  ]
}

请问这个时候Schema结构应该怎么写呢?

我一开始这样写的:

var cs = new Schema({
  d: Number,
  e: Number
});

var ps = new Schema({
  a: Number,
  b: Number,
  c: [[cs]]
});

但后来看文档发现没这种用法,程序也无法运行,但如果改成:

var ps = new Schema({
  a: Number,
  b: Number,
  c: [cs]
});

find出来的数据的结构就跟一开始不一样变成:

{
  "_id": "5392b3751fbda67b48e4b569",
  "a": 1,
  "b": 2,
  "c": [
    {
      "0": {
        "d": 3,
        "e": 4
      },
      "1": {
        "d": 4,
        "e": 5
      }
    },
    {
      "0": {
        "d": 6,
        "e": 7
      },
      "1": {
        "d": 8,
        "e": 9
      }
    }
  ]
}

请问应该怎么设计Schema才能使输出的数据跟一开始的结构一样


【热门文章】
【热门文章】