Mongoose在嵌套对象上找到一个

时间:2016-11-11 18:17:44

标签: node.js mongodb mongoose

我正在尝试从嵌套在Mongo中的对象中的对象获取信息。数据结构如下所示:

Card{
    _id;
    contributors: [
        {
            name;
            _id;
        },
        {
            name;
            _id;
        }
    ]
}

这是我尝试访问'contributors'数组中的特定'贡献者'。

Card.findOne({_id: cardId, "contributor._id": contributorId},
    (err, contributor) => {
        if (err) {
            console.log(err);
            res.status(500);
            res.send({status: "error", message: "sass overload"});
            return;
        }
    console.log(contributor);
    res.send(contributor);
});

1 个答案:

答案 0 :(得分:2)

您需要使用"contributors._id"而不是"contributor._id"

模型中字段的名称为contributors而不是contributor。很明显,还有待注意。