2017-01-24 19 views
0
// Routes 
apiRouter.get('/information/common/:typeId/:page/:pageSize', function (req, res) { 
    var _typeId = parseInt(req.params.typeId); 
    var _page = parseInt(req.params.page); 
    var _pageSize = parseInt(req.params.pageSize); 

    newsModel.count({}, function (err, count) { 
     if (err) { res.send(err); }; 
     newsModel.find({}).skip((_page-1)*_pageSize).limit(_pageSize).exec(function (err, datas) { 
      if (err) { res.send(err); }; 
      res.json({ 
       code: 200, 
       message: 'success', 
       data: datas, 
       count: count 
      }); 
     }); 
    }); 
}); 

module.exports = apiRouter; 

上記のコードは、私はtypeIdでフィルタできます。 typeId3210ように、それは0等しい、DBからの全てのデータを取得するとき、及び場合12又は3等しく、それの種類を取得します。 :Pマングースの検索と改ページ

答えて

0

typeIdの値に応じてキーを設定できる追加のクエリオブジェクトを作成します。例:

// Routes 
apiRouter.get('/information/common/:typeId/:page/:pageSize', function (req, res) { 
    var _typeId = parseInt(req.params.typeId); 
    var _page = parseInt(req.params.page); 
    var _pageSize = parseInt(req.params.pageSize); 
    var _query = {}; 

    if (!!_typeId) _query["typeId"] = _typeId; 

    newsModel.count(_query, function (err, count) { 
     if (err) { res.send(err); }; 
     newsModel.find(_query).skip((_page-1)*_pageSize).limit(_pageSize).exec(function (err, datas) { 
      if (err) { res.send(err); }; 
      res.json({ 
       code: 200, 
       message: 'success', 
       data: datas, 
       count: count 
      }); 
     }); 
    }); 
}); 

module.exports = apiRouter; 
関連する問題