微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 多个填充 – mongoosejs

只是一个简单的查询,例如在模型中使用双引用.

架构/模型

var OrderSchema = new Schema({

    user: {
        type    : Schema.Types.ObjectId,
        ref     : 'User',
        required: true
    },

    meal: {
        type    : Schema.Types.ObjectId,
        ref     : 'Meal',
        required: true
    },
});

var OrderModel = db.model('Order', OrderSchema);

询问

OrderModel.find()
    .populate('user') // works
    .populate('meal') // dont works
    .exec(function (err, results) {
         // callback
    });

我已经尝试过类似的东西

.populate('user meal')
.populate(['user', 'meal'])

实际上只有一个填充物可以工作.

那么,如何让两个填充工作?

解决方法:

您已经使用了正确的语法:

OrderModel.find()
    .populate('user')
    .populate('meal')
    .exec(function (err, results) {
         // callback
    });

也许来自订单的膳食ObjectId不在Meals系列中?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐