Los documentos Mongoose corresponden a documentos MongoDB en una relación uno a uno. Un documento mangosta es básicamente una instancia de un modelo.
Primero debe instalar el módulo mongoose:
Paso 1: debe visitar el módulo de enlace mangosta. Puedes instalarlo usando este comando.
npm install mongoose
Paso 2: después de eso, cree una carpeta y también cree un archivo en esa carpeta, por ejemplo, index.js , para ejecutar el archivo usando este comando.
node index.js
Paso 3: No olvide iniciar el servidor MongoDB en otra pestaña de terminal usando este comando.
mongod
Ahora, veamos cómo funciona:
1. Creación de un nuevo documento: para crear un nuevo documento, debe crear un modelo de mangosta y, luego, con ese modelo, puede crear un nuevo documento. Y para guardarlo en la base de datos, debe usar el método save() para guardar un documento o el método insertMany() para insertar varios documentos.
Ejemplo: En el siguiente ejemplo, vamos a crear un nuevo documento. Abra el archivo index.js y escriba el siguiente código:
Javascript
const mongoose = require("mongoose"); // Database connection mongoose.connect("mongodb://127.0.0.1:27017/geeksforgeeks", { useNewUrlParser: true, useUnifiedTopology: true, }); // User model const User = mongoose.model("User", { name: { type: String }, age: { type: Number }, }); // Creating a new dummy user document const newUser = new User({ name: "Ayush", age: 20, }); // Save it to the database newUser.save((err, res) => { if (err) return handleError(err); else return console.log("Result: ", res) }); // For inserting multiple documents User.insertMany( [ { name: "Rishu", age: 21, }, { name: "Megha", age: 24, }, { name: "Aman", age: 16, }, { name: "Riya", age: 18, }, ], (err, res) => { if (err) return handleError(err); else return console.log("Result: ", res) } );
Pasos para ejecutar la aplicación: escriba el siguiente código en la terminal para ejecutar el servidor:
node index.js
Producción:
Arriba están los datos de muestra en la base de datos después de ejecutar la función . Puede usar la brújula o terminal MongoDB para ver la base de datos:
2. Recuperación de documentos: Para recuperar un documento necesitamos usar el método findOne() . Toma condiciones como parámetro, lo cual es absolutamente opcional.
Ejemplo: En el siguiente ejemplo, vamos a recuperar documentos. Abra el archivo index.js y escriba el siguiente código:
Javascript
const mongoose = require('mongoose'); // Database connection mongoose.connect('mongodb://127.0.0.1:27017/geeksforgeeks', { useNewUrlParser: true, useUnifiedTopology: true }); // User model const User = mongoose.model('User', { name: { type: String }, age: { type: Number } }); // Find only one document matching // the condition(age >= 21) User.findOne({ age: { $gte: 21 } }, function (err, res) { if (err) { console.log(err) } else { console.log("Result : ", res); } });
Pasos para ejecutar la aplicación: escriba el siguiente código en la terminal para ejecutar el servidor:
node index.js
Producción:
3. Actualización de un documento: para actualizar un documento , debe utilizar el método updateOne() o el método findOneAndUpdate() . La diferencia clave entre ellos es que updateOne() no devuelve el documento actualizado, mientras que findOneAndUpdate() devuelve el documento actualizado.
Ejemplo: En el siguiente ejemplo, vamos a actualizar documentos. Abra el archivo index.js y escriba el siguiente código:
Javascript
const mongoose = require('mongoose'); // Database connection mongoose.connect('mongodb://127.0.0.1:27017/geeksforgeeks', { useNewUrlParser: true, useUnifiedTopology: true }); // User model const User = mongoose.model('User', { name: { type: String }, age: { type: Number } }); // Update only one document matching User.updateOne({ name: "Rishu" }, { age: 22 }, function (err, res) { if (err) { console.log(err) } }); // Or you can use findOneAndUpdate() const doc = User.findOneAndUpdate( { name: "Rishu" }, { age: 22 }, // if 'new' isn't true then findOneAndUpdate() // will return the document as it was // before it was updated. { new: true }, function (err, res) { if (err) { console.log(err) } else { console.log("Result : ", res); } });
Pasos para ejecutar la aplicación: escriba el siguiente código en la terminal para ejecutar el servidor:
node index.js
Producción:
Como puede ver a continuación, el documento está actualizado:
4. Sobrescribir un documento: Para sobrescribir un documento podemos usar el método replaceOne() . El método ‘replaceOne()’ toma 2 parámetros requeridos, algunos parámetros opcionales y una función de devolución de llamada. El primer parámetro es el documento que desea sobrescribir y el segundo es el nuevo objeto de documento.
Ejemplo: En el siguiente ejemplo, vamos a sobrescribir documentos. Abra el archivo index.js y escriba el siguiente código:
Javascript
const mongoose = require('mongoose'); // Database connection mongoose.connect('mongodb://127.0.0.1:27017/geeksforgeeks', { useNewUrlParser: true, useUnifiedTopology: true }); // User model const User = mongoose.model('User', { name: { type: String }, age: { type: Number } }); // OverWrite a document using `replaceOne()` method User.replaceOne( { name: "Rishu" }, { name: "Raja", age: 19 }, (err) => { if (err) return console.error(err); else { console.log('{ name: "Rishu" } is replaced with {name: "Raja", age: 19}') } });
Pasos para ejecutar la aplicación: escriba el siguiente código en la terminal para ejecutar el servidor:
node index.js
Producción:
Como puede ver a continuación, el documento se sobrescribe:
Hemos repasado la API de documentos de mongoose más importante hasta el momento. Hay otras API accesibles, de las que hablaré en un artículo futuro.
Publicación traducida automáticamente
Artículo escrito por ayushrajrock99 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA