mongoose 在一次请求中需要返回某个SCHEMA的总数,又要查询他其中的一些数据.怎么写?
发布于 10 年前 作者 algz 6170 次浏览 最后一次编辑是 8 年前 来自 问答

mongoose 在一次请求中需要返回某个SCHEMA的总数,又要查询他其中的一些数据.怎么写? A:{…} 统计A的总数和按查询条件查询出部分数据返回.

2 回复
exports.queryArticle = function(search,pageSize,pageIndex,callback){

    var start_index = pageSize*pageIndex;
    var query = articleModel.find(search).limit(pageSize);  
    if(start_index>0)
    {
        query.skip(start_index);
    }
    query.sort('-create_date');
    query.exec(function (err, list) {
        if(err){
            callback(err);
        }
        else{
            var pagedList = {};
            pagedList.pageIndex = pageIndex;
            pagedList.dataList= list;

            if( pageIndex ==0 ){  //如果是第一页 则需要获取总页面
                articleModel.count(search,function(errcount,count){
                    if(errcount){
                        callback(errcount);
                    }
                    else{
                        pagedList.total = count; 
                        callback(null,pagedList);
                    }
                });
              
            }
            else{
                callback(null,pagedList);
            }            
        }
    });
    
}

如果还要查询B,C文档,按异步回调的规则,岂不是要层层镶套?

回到顶部