Mongoose,返回整个文档,而不仅仅是其中的一部分

时间:2012-02-13 23:53:45

标签: javascript node.js mongodb mongoose

我希望mongodb的mongoose查询回调结果只包含文档的某个部分。现在,以下代码返回整个文档,而不仅仅是假定的切片数组部分。任何线索为什么?在数据库中,pending实际上包含10个以上的元素。谢谢

var NotificationsReference = new Schema({

    id             : Number, //fbid
    unRead         : Number,
    pendingSize    : Number,
    pending        : [Notification]

});

NotificationsReference.find({ id: userId}, { pending: { $slice: [skip, 5]}}, function(err, result){
                   if(err || result === null){
                        callback("Failed");
                   }
                   else{
                       callback(result);
                   }
                });

1 个答案:

答案 0 :(得分:2)

尝试使用Mongoose API:

NotificationsReference
    .findById(userId)
    .where('pending')
    .slice([skip, 5])
    .run(function(err, docs){
        console.log(err ? err : docs);
    })