猫鼬填充了一条深深的道路

时间:2018-02-06 05:51:06

标签: mongodb mongoose

如何使用populate api获取用户模型填充的收件箱数据?

这里是shcemas:

const inboxSchema = Schema({
  messageList: [{
    from: { type: Schema.Types.ObjectId, require: true, ref: 'user' },
    to: { type: Schema.Types.ObjectId, require: true, ref: 'user' },
  }]
})

const userSchema = Schema({
  name: { type: String, require: true },
})

预期结果,例如:

{
    "messageList": [
        {
            from: {
                _id: xxxxxxxxxxxxxxx,
                name: 'Smith'
            },
            to: {
                _id: zzzzzzzzzzzzzzz,
                name: 'John'
            }
        }
    ]
}

1 个答案:

答案 0 :(得分:0)

您也可以使用.populate()查询,如下所示。"

.populate([{
    path:"messageList.from"
    select:"_id name"
},{
    path:"messageList.to"
    select:"_id name"
}])