有没有一种方法可以在猫鼬的对象数组中填充对象内部的数组

时间:2020-04-30 22:49:26

标签: node.js express mongoose

所以,我有3个模式,

用户

const UserSchema = new mongoose.Schema({
    ...,    
    weekly: [{
        type: mongoose.Schema.Types.ObjectId,
        ref: 'Weekly'
    }]
});

每周

const weeklyAnalyticSchema = new mongoose.Schema({      
  daily: [{
    type: mongoose.Schema.Types.ObjectId,
    ref: 'DailyAnalytic'
  }],
  weekStart: {
    type: Date,
    // default: addDaystoDate(1)
  },
  weekEnd: {
    type: Date,
    // default: addDaystoDate(7)
  }
})

每日

const Daily = new mongoose.Schema({
  date: Date,
  foo: bar
})

我正在尝试在每周阵列中填充每日阵列, 像这样...

我按照mongoosejs mongoose deep populate

的文档进行操作
let found = await db.User.findById(req.user._id).populate({
path: "weeklyAnalytics",
populate: {
  path: "dailyAnalytics"
}).exec()

结果像这样

 daily: [ 1],
  weekly: [
    {
      daily: [Array],
      _id: 1,                   
      __v: 0
    }
  ],

我也尝试了许多其他方法,并阅读和修改了其他人的代码,但是我似乎无法每天在每周的内部填充该代码。

1 个答案:

答案 0 :(得分:1)

为什么提问者问了问题总是回答

我只需要做console.log(found.week),一切都会显示出来。

现在我可以做任何事情。