Javascript 如何在mongoDB中将$limit和$sort与Q.nbind()一起使用

Javascript 如何在mongoDB中将$limit和$sort与Q.nbind()一起使用,javascript,node.js,mongodb,mongoose,q,Javascript,Node.js,Mongodb,Mongoose,Q,我正在我的应用程序中使用Q模块。我想使用$limit和$sort函数来查询mongoDB, 我还使用Q.nbind()进行查询 var Q = require('q'); var mongoose = require('mongoose'); var RequestPrayers = mongoose.model('requestPrayers'); var RPrayerfind = Q.nbind(RequestPrayers.find, RequestPrayers); functi

我正在我的应用程序中使用Q模块。我想使用$limit和$sort函数来查询mongoDB, 我还使用Q.nbind()进行查询

var Q = require('q');
var mongoose = require('mongoose');
var RequestPrayers = mongoose.model('requestPrayers');
var RPrayerfind = Q.nbind(RequestPrayers.find, RequestPrayers);



function getSingleRParyerInfo(FrndID){

    var id = FrndID
    var prayerInfo={prayersInfo:''};
    return RPrayerfind({userID:id, is_notPrivate:true})
        //   return   find()
//  ^^^^^^ Rule 1

        .then(function(Prayers) {
//  ^^^^^ Rule 3
            if (!Prayers){
                prayerInfo.prayersInfo = '';
                //   console.log(User)
            }else{
                prayerInfo.prayersInfo = Prayers;
                //console.log(User)
            }
            return prayerInfo;
//      ^^^^^^ Rule 3b
        });
}
请问我应该用什么来获得我想要的结果

返回RPrayerfind({userID:id,is_notPrivate:true})


返回RPrayerfind({userID:id,is_notPrivate:true},{$limit:2})

您可以像这样简单地使用它


RPrayerFind({userId:1},{},{'$limit':10,$skip':300})

这非常简单,只需看看以下代码:

    var q = require('q');
    var findSomeThing = q.nbind(SomeThing.find,SomeThing);

    SomeThing({"someId":"someIdValue"},{},{limit:2}).done(function(data){

        //2 records will be retrieved here
        console.log(data);


    });

希望这对你有帮助

它不起作用所有数据都显示没有限制,加上dat只包含祈祷者的ID,而不是返回整个信息对象。他们的API文档建议,这就是mongoose使用它的方式。你确定你做得对吗?啊!!抱歉@Zeeshan发布了正确答案,我错过了一个变量传递。所以它是这样的,{//搜索条件},{//你想要得到的变量},{//条件,比如限制排序。}