Модель документа Mongoose.prototype.save() API
Метод Model.save() API Mongoose используется для сохранения изменений, внесенных в документ, и обновления последних изменений в коллекции. Мы можем использовать метод save() для любого объекта модели коллекции мангустов.
Синтаксис:
Model.save()
Параметры: метод Model.save() принимает два параметра:
- варианты: Это объект с различными свойствами.
- обратный вызов: это функция обратного вызова, которая запускается после завершения выполнения.
Возвращаемое значение: функция Model.save() возвращает обещание. Результат содержит объект модели.
Настройка приложения Node.js:
Шаг 1. Создайте приложение Node.js с помощью следующей команды:
npm init
Шаг 2: После создания приложения NodeJS установите необходимый модуль с помощью следующей команды:
npm install mongoose
Структура проекта: Структура проекта будет выглядеть следующим образом:
Структура базы данных: Структура базы данных будет выглядеть так, в коллекции присутствуют следующие документы.
Пример 1. В этом примере мы установили соединение с базой данных с помощью мангуста и определили модель через userSchema, имея два столбца или поля «имя» и «возраст». В конце концов, мы используем метод save() для объекта модели User, который сохранит значение обновления для
возраст» в коллекции.
- app.js: запишите приведенный ниже код в файл app.js:
Javascript
// Require mongoose moduleconst mongoose = require("mongoose"); // Set Up the Database connection useNewUrlParser: true, useUnifiedTopology: true,}); const userSchema = new mongoose.Schema({ name: String, age: Number,}); // Defining userSchema modelconst User = mongoose.model("User", userSchema); User.findById("63203694182cd3c22ea480ff").then(doc => { doc.age = 20; doc.save().then(result => { console.log(result) })}); |
Шаг для запуска программы: Чтобы запустить приложение, выполните следующую команду из корневого каталога проекта:
node app.js
Выход:
{
_id: new ObjectId("63203694182cd3c22ea480ff"),
name: "User1",
age: 20,
__v: 0
}Графическое представление базы данных с помощью инструмента Robo3T GUI:
Пример 2. В этом примере мы установили соединение с базой данных с помощью мангуста и определили модель через userSchema, имея два столбца или поля «имя» и «возраст». Мы определили функцию с именем «updateDocument», чтобы мы могли использовать функциональность метода save() через асинхронную функцию.
- app.js: запишите приведенный ниже код в файл app.js:
Javascript
// Require mongoose moduleconst mongoose = require("mongoose"); // Set Up the Database connection useNewUrlParser: true, useUnifiedTopology: true,}); const userSchema = new mongoose.Schema({ name: String, age: Number,}); // Defining userSchema modelconst User = mongoose.model("User", userSchema); const updateDocument = async (age) => { const doc = await User.findById("63203694182cd3c22ea480ff") doc.age = age; const result = await doc.save() console.log(result)}updateDocument(10) |
Шаг для запуска программы: Чтобы запустить приложение, выполните следующую команду из корневого каталога проекта:
node app.js
Выход:
{
_id: new ObjectId("63203694182cd3c22ea480ff"),
name: "User1",
age: 10,
__v: 0
}Графическое представление базы данных с помощью инструмента Robo3T GUI:
Ссылка: https://mongoosejs.com/docs/api/model.html#model_Model-save