请教一个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才能使输出的数据跟一开始的结构一样

阅读 5.1k
1 个回答
  • -#这结构难道不一样吗?
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题