axrising
@axrising

Как вернуть на фронтенд данные из Mongodb?

Как вернуть на фронтенд данные из Mongodb?
const db = client.db(dbName)
      const collection = db.collection('reviews')
      const result = collection.find({}).limit(20)
      console.log(result)
      res.status(200).json({ result })

Вместо отзывов я получаю вот это
{
    "result": {
        "_events": {},
        "_eventsCount": 0
    }
}
  • Вопрос задан
  • 131 просмотр
Решения вопроса 1
rozhnev
@rozhnev
Fullstack programmer, DBA, медленно, дорого
Обращение к базе данных является асинхронным, следовательно используем callback
const db = client.db(dbName)
const collection = db.collection('reviews')
collection.find().limit(20).toArray((err, result) => {
    if (err) throw err;
    console.log(result);
    db.close();
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
dima9595
@dima9595
Junior PHP
Вероятно всего у вас всё правильно работает. В методе collection.find({}) вы передаёте пустой объект. А я как понимаю, метод find() принимает некий id или какой-то объект для выборки. Да и find и limit вместе наврятли можно использовать.
К сожалению я не знаю что у вас за библиотека, так что это чисто теория.
Ответ написан
Grapeoff
@Grapeoff
В чём концепция...?
Обращение к базе данных является асинхронным, следовательно используем async/await

const db = client.db(dbName)
const collection = db.collection('reviews')

const result = await collection.find({}).limit(20)
console.log(result)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы