mongoose查找为什么返回undefined

exports.getAllStudent = function (req, res) {
    //拿到参数
    var rows = url.parse(req.url, true).query.rows;
    var page = url.parse(req.url, true).query.page;
    var sidx = url.parse(req.url, true).query.sidx;
    var sord = url.parse(req.url, true).query.sord;

    var sordNumber = sord == "asc" ? 1 : -1;

    //分页算法
    Student.count({}, function (err, count) {
        //总页数
        console.log(count)
        var total = Math.ceil(count / rows);
        console.log(total)
      
        var sortobj = {};
        //动态绑定一个键
        sortobj[sidx] = sordNumber;
        //这是一个结合了排序、分页的大检索
        //为什么要暴露records、page、total、rows这些键,都是jqGrid要求的
        //请看     http://blog.mn886.net/jqGrid/ ,  左侧点击新手demo
        //它的API:http://blog.mn886.net/jqGrid/JSONData
        /* Student.find({},function (err,results) {
             //console.log(results);
             res.json({"records" : count, "page" : page, "total" : total , "rows" : results});
         });*/
 
      
        /*.sort(sortobj)*/
        Student.find({}).limit(rows).skip(rows * (page - 1)).exec(function (err, results) {
            console.log(rows,page);
            console.log(results)
            res.json({"records": count, "page": page, "total": total, "rows": results});
        });
    });
};
阅读 2.8k
2 个回答

第二个find里面 exec(function(err,results){console.log(err)}你可以知道是limit(rows)的类型有问题。把声明里的var rows = url.parse(req.url, true).query.rows; ====>var rows = parseInt( url.parse(req.url, true).query.rows); 即可

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题