node.js – Mongoose – 查找包含子文档引用的文档

我有2个型号,

var locationSchema = mongoose.Schema({
    name: String,
    users: [{
        type: mongoose.Schema.Types.ObjectId,
        ref: 'User'
    }]
});

var userSchema = mongoose.Schema({
    name: String,
    email: String
});

我想获得具有特定用户的所有位置.例如,使用以下数据,

Location      Users
    A         [1,2,3]
    B         [1,4,5]
    C         [6]

说,我想找到拥有用户#1的所有位置.我试过以下,没用

var locationModel = mongoose.model('Location', locationSchema);

locationModel.find({
    users : { $in: user }
});

locationModel.find({
    'users._id' : user._id
});

locationModel.find({
    'users.$oid' : user._id
});

locationModel.find({
    'users.id' : user._id
});

任何的想法?

最佳答案

locationModel.find({
    users : { $in: [some_user_id] }
});
点赞