Я пытаюсь установить extract specific document fields from a mongodb collection (v 3.0.8 на MongoLab). Возвращенные документы должны соответствовать диапазону дат. Моя цель - извлечь определенные поля из этих документов. Мой код nodejs,mongodb + nodejs для поиска и возврата определенных полей в документах
var query = {}, operator1 = {}, operator2 = {}, operator3 = {} ;
operator1.$gte = +startDate;
operator2.$lte = +endDate;
operator3.$ne = 'move';
query['xid'] = 1; // Problem here?
query['date'] = Object.assign(operator1, operator2);
query['type'] = operator3;
console.log(query);
MongoClient.connect(connection, function(err, db) {
if(err){
res.send(err);
} else {
db.collection('jbone')
.find(query)
.toArray(function(err, result){
console.log(err);
res.json(result);
});
};
});
Если я предпочитаю возвращать все поля в диапазоне дат, запрос работает нормально. Если я выберу только поле xid
, результаты не получат. Мой query
объект выглядит разумно в соответствии с the docs. console.log(err)
дает:
{ xid: 1,
date: { '$gte': 20160101, '$lte': 20160107 },
type: { '$ne': 'move' } }
null
null
является err
.
Может ли кто-нибудь помочь мне понять, что я делаю неправильно?
Или указать мне на другие похожие вопросы с ответом?
Благодаря
Пожалуйста, проверьте 'err' в функции обратного вызова, надеюсь, что это может дать больше информации ... – zangw
я обновил вопрос с' err' объекта, который показывает только 'null' – Colin
Есть' XID: 1' связанная запись в документе 'jbone'? – zangw