Убрать _id из запроса данных mongoDB

269
27 марта 2018, 03:18

Есть бд в которой находятся 3 значения:

{ "_id" : ObjectId("5ab781e5ae47fccd161ef614"), "site" : 
"https://test.ru/" }
{ "_id" : ObjectId("5ab781f8ae47fccd161ef615"), "site" : 
"https://test2.ru/" }
{ "_id" : ObjectId("5ab78206ae47fccd161ef616"), "site" : 
"https://test3.ru/" }

Пытаюсь извлечь эти данные без ObjectId:

            var MongoClient = require('mongodb').MongoClient;
            var url = "mongodb://localhost:27017/mydb";
            var arrSites =[];

            MongoClient.connect(url, function(err, db) {
                if (err) throw err;
                //Return only the "name" field in the result:
                var dbo = db.db("nameSites");
                dbo.collection("newsSites").find({}, { _id: 0, site: 1 }).toArray(function(err, result) {
                    if (err) throw err;
                    for(i=0;i<=2;i++){
                        arrSites[i]=result[i];
                    }
                    console.log(arrSites);
                    db.close();
                });
            });

Но в результате получаю полные данные, где _id также отображается, как это исправить?

Answer 1

Судя по коду, Вы используете, скорее всего модуль MongoDB версии 3.0. Для него изменился синктасис подобного запроса. Вторым параметром идет объект, в котором могут быть несколько опций. В Вашем случае, опция называется projection. Поэтому так и указываете:

var options = {
    projection: {
        _id: 0, 
        site: 1
    }
}
dbo.collection("newsSites").find({}, options).toArray.....

http://mongodb.github.io/node-mongodb-native/3.0/api/Collection.html#find

READ ALSO
Как вызвать функцию объекта, если имя объекта и имя функции хранятся в переменной?

Как вызвать функцию объекта, если имя объекта и имя функции хранятся в переменной?

Как вызвать функцию объекта, если имя объекта и имя функции хранятся в переменной?

209
Как значение функции вернуть в html?

Как значение функции вернуть в html?

Мне нужно задать объекту рандомный цветРандомный цвет делает функция, но вопрос в том, как значение этой функции установить в CSS?

240
Почему не работает валидатор в Angular 5

Почему не работает валидатор в Angular 5

Есть попытка создания собственного валидатора для формы в Angular 5 :

189
Изменяющий фон при скроллинге

Изменяющий фон при скроллинге

Здрасвуйте! Есть хедер, который имеет прозрачный фонКак только пользователь начинает скролить страницу вниз - хедеру даётся цвет:

340