В MongoDB документ схемы модели определяет структуру коллекции и содержащиеся в ней данные. Он позволяет обеспечить согласованность данных, правила проверки и определить связи между документами. В этой статье блога мы рассмотрим концепцию документов схемы модели в MongoDB и обсудим различные методы и примеры кода для работы с ними.
- Определение схемы модели:
Чтобы определить схему модели в MongoDB, вы можете использовать библиотеку Mongoose, популярный инструмент моделирования объектных данных (ODM) для MongoDB в Node.js. Вот пример определения простой схемы для коллекции «пользователи»:
const mongoose = require('mongoose');
const userSchema = new mongoose.Schema({
name: String,
age: Number,
email: {
type: String,
required: true,
unique: true
}
});
const User = mongoose.model('User', userSchema);
В этом примере мы определяем схему с тремя полями: «имя», «возраст» и «электронная почта». В поле «электронная почта» установлены правила проверки с использованием параметров requiredи unique.
- Создание документа:
После определения схемы вы можете создавать новые документы на основе этой схемы. Вот пример создания нового пользовательского документа:
const newUser = new User({
name: 'John Doe',
age: 25,
email: 'john.doe@example.com'
});
newUser.save()
.then(() => console.log('User created successfully'))
.catch((error) => console.error(error));
В этом фрагменте кода мы создаем новый пользовательский документ, используя определенную схему. Затем мы вызываем метод save(), чтобы сохранить документ в базе данных.
- Запрос документов:
После того как документы сохранены в базе данных, вы можете запрашивать их, используя различные методы, предоставляемые MongoDB. Вот пример запроса пользователей определенного возраста:
User.find({ age: 25 })
.then((users) => console.log(users))
.catch((error) => console.error(error));
В этом примере мы используем метод find()для получения всех пользователей в возрасте 25 лет.
- Обновление документов:
Чтобы обновить документы, вы можете использовать такие методы, как updateOne()или updateMany(). Вот пример обновления адреса электронной почты пользователя:
User.updateOne({ name: 'John Doe' }, { email: 'new.email@example.com' })
.then(() => console.log('User updated successfully'))
.catch((error) => console.error(error));
В этом фрагменте кода мы используем метод updateOne()для обновления адреса электронной почты пользователя с именем «Джон Доу».
- Удаление документов:
Чтобы удалить документы, вы можете использовать такие методы, как deleteOne()или deleteMany(). Вот пример удаления пользовательского документа:
User.deleteOne({ name: 'John Doe' })
.then(() => console.log('User deleted successfully'))
.catch((error) => console.error(error));
В этом примере мы используем метод deleteOne()для удаления пользовательского документа с именем «Джон Доу».
Документы схемы модели играют решающую роль в моделировании данных MongoDB. Они определяют структуру, правила проверки и отношения внутри коллекции. В этой статье мы рассмотрели различные методы и предоставили примеры кода для определения схемы, создания документов, выполнения запросов, обновления и удаления документов в MongoDB. Используя эти методы, вы можете эффективно моделировать данные и манипулировать ими в MongoDB, обеспечивая согласованность и целостность данных.