Еще одна хорошая особенность использования Mongoose состоит в том, что вы четко определяете свои модели (включая значения по умолчанию, валидацию и т. Д.) В своем приложении, что одновременно предоставляет много встроенной документации для вашего приложения и значительно снижает вероятность несоответствий.когда вы имеете дело с относительно неструктурированной моделью данных.
Реляционные базы данных имеют множество функций для определения типов данных, значений по умолчанию, индексов и т. д. и будут выдавать ошибки, если вы (например) попытаетесь использовать столбец, которыйне существует.
Mongo устраняет многие из этих издержек, но создает дополнительную работу, гарантирующую, что согласованная модель данных документируется и поддерживается в коде реализации;Mongoose делает это намного проще.
У него также есть много полезных функций для контроля ваших моделей, включая возможность использовать строгие схемы (по умолчанию начиная с версии 3), что означает любые значения, которые у вас нет.уже определенные, не записываются в базу данных, «виртуальные поля», которые, например, могут объединять имя и фамилию в строку, как если бы она была сохранена в базе данных (но это не обязательно), иуправление индексами.Для получения более подробной информации см. руководство .