Задать вопрос
@AndrewRusinas

Почему MongoDB выводит массив с объектом вместо объекта?

По данном запросу возвращается немного неожиданный результат.

app.get('/blog/:url', (req, res) => {
	var db = req.db;
	Post.find({ 'url': req.params.url }, 'title description image content category date url', function (error, post) {
		if (error) { console.error(error); }
		res.send(post)
	})
})


Возвращается data: Array(1), то есть массив с нужным объектом. По этой причине, чтобы вытащить нужные данные, приходится писать this.title = response.data[0].title, что мне кажется не очень хорошим решением, ведь гипотетически индекс в массиве может измениться.
В доках нашел только принудительное приведение курсора к массиву toArray(), а мне нужно наоборот(
  • Вопрос задан
  • 123 просмотра
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Разработчик на Python совместно с МФТИ
    7 месяцев
    Далее
  • Академия Эдюсон
    FullStack-разработчик: тариф PRO
    14 месяцев
    Далее
  • Яндекс Практикум
    Фулстек-разработчик
    16 месяцев
    Далее
Решения вопроса 1
@AndrewRusinas Автор вопроса
Ой мда. Быстро решил проблему тем, что поменял метод find на findOne. Спасибо за внимание.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы