Menu
CoddyTech

Поиск одного документа

Часть раздела Базы данных с MongoDB путешествия по Node.js на Coddy. Урок 6 из 29.

Иногда вместо всей коллекции нужен один документ. findOne принимает объект фильтра. Имена его полей и значения описывают документ, который нужно найти.

const book = await books.findOne({title: 'Dune'});
// один документ книги, а не массив

Значение заголовка должно совпадать. Если совпадений нет, findOne возвращает null. Прежде чем читать поля результата, проверьте, не равен ли он null. В этом примере используется заголовок, который можно прочитать. В следующем уроке рассматриваются автоматически сгенерированные идентификаторы и то, чем их тип отличается от текста в URL.

challenge icon

Задание

Легко

Это небольшой практический проект. Настройка уже выполнена; редактируй только exercise.js.

Найди Эмму по названию и верни документ. Нажми «Играть» и выполни GET /result: название — Emma, а год — 1815. Используй findOne, чтобы результатом был один объект, а не список.

Попробуйте сами

export async function exercise(books) {
    return {};
}

Все уроки раздела Базы данных с MongoDB

Потренируйтесь самостоятельно: Песочница Express