Mongoose选择子文档

时间:2013-09-18 02:33:47

标签: node.js mongodb express mongoose

我有这个Mongoose Schema:

UserSchema = new db.Schema({
   fullname : String,
   sale : [{ _id: [db.Schema.Types.ObjectId] }],
   friends : [db.Schema.Types.ObjectId]
}

如何修复此代码以使其选择Sale的_id字段? TIA

user.Model
        .find({
            _id : {
                $in: friends
            }
        })
        .select('sale._id') // invalid syntax
        .exec(function(err, results) {
            console.log(results);
        });

1 个答案:

答案 0 :(得分:1)

UserSchema = new db.Schema({
   fullname : String,
   sale : [{ type: db.Schema.Types.ObjectId, ref: 'Sale' }],
   friends : [db.Schema.Types.ObjectId]
}
user.Model
    .find({
        _id : {
            $in: friends
        }
    })
    .exec(function(err, results) {
        console.log(results);
    });

您不需要.select,因为默认情况下会选择架构中的所有内容。您可能需要.populate('sale')来加载完整的销售实例,而不仅仅是_id。