将猫鼬结果转换为数组组

时间:2018-07-15 13:40:16

标签: arrays node.js mongodb mongoose handlebars.js

在聚合函数上,我得到的输出具有以下形式:-

> [ { DescriptionArray:
         [ 'Des1',
           'Des2',
           'Des3',
           'Des4' ],
        PicArray:
         [ 'Pic1.jpeg',
           'Pic2.jpeg',
           'Pic3.jpeg',
           'Pic4.jpeg' ] } ]

但是,我希望输出为以下形式:-

>[ { DescriptionArray:
 [ 
  ['Des1'],
   ['Des2'],
   ['Des3'],
   ['Des4' ]
],PicArray:
 [ 
   ['Pic1.jpeg'],
   ['Pic2.jpeg'],
   ['Pic3.jpeg'],
   ['Pic4.jpeg'] 
] } ]

我的聚合函数如下:-

>User.aggregate([
  {
    "$project": {
      "_id": 0,
      "DescriptionArray": {
        "$reduce": {
          "input": "$services.description",
          "initialValue": [],
          "in": {
            "$concatArrays": [
              "$$this",
              "$$value"
            ]
          }
        }
      }, 
    "PicArray": {
        "$reduce": {
          "input": "$services.badpic",
          "initialValue": [],
          "in": {
            "$concatArrays": [
              "$$this",
              "$$value"
            ]
          }
        }
      }
     }
  }
])

我的数据库的架构如下:-

> var serviceSchema = new mongoose.Schema({
  description:[String],
  pic:[String]
})

有什么办法可以获取所需格式的输出吗?

0 个答案:

没有答案