猫鼬仅从MongoDB返回ID

时间:2018-11-28 08:32:30

标签: node.js mongodb datatables

我目前正在尝试将数据表与MongoDB数据库合并。我在访问返回的对象时遇到了一些麻烦。我看到的主要问题是,我只从MongoDB返回_id,而没有该对象的值。

这里是我用来将信息传递到数据表的代码。

var itemsModel = require('./models/itemReturn');

exports.getItemList = function(req, res) {

  var searchStr = req.body.search.value;
  if (req.body.search.value) {
    var regex = new RegExp(req.body.search.value, "i")
    searchStr = { $or: [{ 'productName': regex }, { 'itemPrice': regex }, { 'Quantity': regex }, { 'Description': regex }, { 'seller': regex }] };
  } else {
    searchStr = {};
  }

  var recordsTotal = 0;
  var recordsFiltered = 0;

  itemsModel.count({}, function(err, c) {
    recordsTotal = c;
    console.log(c);
    itemsModel.count(searchStr, function(err, c) {
      recordsFiltered = c;
      itemsModel.find(searchStr, 'productName itemPrice Quantity Description seller', { 'skip': Number(req.body.start), 'limit': Number(req.body.length) }, function(err, results) {
        if (err) {
          console.log('error while getting results' + err);
          return;
        }
        var data = JSON.stringify({
          "draw": req.body.draw,
          "recordsFiltered": recordsFiltered,
          "recordsTotal": recordsTotal,
          "data": results
        });
        console.log(data);
        res.send(data);
      });

    });
  });
};

这是模型

// app/models/itemsReturn.js
// load the things we need
var mongoose = require('mongoose');


var schemaOptions = {
  timestamps: true,
  toJSON: {
    virtuals: true
  },
  toObject: {
    virtuals: true
  }
};


// define the schema for our item model
var itemsReturned = mongoose.Schema({
  productName: String,
  itemPrice: String,
  Quantity: String,
  Description: String,
  seller: String
}, schemaOptions);


// create the model for users and expose it to our app
var items = mongoose.model('items', itemsReturned);
module.exports = items;

问题是我知道它不是数据表问题,因为我可以使_id出现在表中。我只需要知道如何返回整个对象而不是返回_ID,以便可以访问对象的值。

If it helps this is the tutorial I am following.

更新:好的,所以我弄清楚了为什么我的MongoDB集合只返回商品ID。问题是我已将所有内容存储在本地数据库中(哎呀)。

0 个答案:

没有答案