Каковы преимущества использования модуля Mongoose?
Модуль Mongoose - один из самых мощных внешних модулей NodeJS. Mongoose - это ODM MongoDB, т.е. (моделирование объектной базы данных), который используется для перевода кода и его представления из MongoDB на сервер Node.js.
Преимущества модуля Mongoose:
- Проверка коллекции базы данных MongoDB может быть выполнена легко.
- Предопределенная структура может быть реализована в коллекции.
- Ограничения можно применять к документам коллекций с помощью Mongoose.
- Модуль Mongoose построен на основе драйвера MongoDB и обеспечивает простую абстракцию запроса и определение запроса.
Многие разработчики, которые привыкли использовать SQL, чувствуют себя некомфортно при работе с MongoDB, потому что базы данных Nosql и гибкая структура здесь играют важную роль и делают схему коллекции похожей на базы данных SQL.
Модуль Mongoose предоставляет несколько функций для управления документами коллекции базы данных MongoDB.
Реализация для определенной структуры и проверки коллекции: модуль mongoose налагает определенную структуру на коллекцию и делает ее жесткой.
Установка модуля:
npm установить мангуста
Структура проекта:
Запуск сервера на локальном IP: данные - это каталог, в котором находится сервер MongoDB.
mongod --dbpath = данные --bind_ip 127.0.0.1
Имя файла- index.js:
Javascript
// Importing mongoose module const mongoose = require( "mongoose" ) // Database Address const url = " mongodb://localhost:27017/GFG " // Connecting to database mongoose.connect(url).then((ans) => { console.log( "ConnectedSuccessful" ) }). catch ((err) => { console.log( "Error in the Connection" ) }) // Calling Schema class const Schema = mongoose.Schema; // Creating Structure of the collection const collection_structure = new Schema({ name: { type: String, require: true }, marks: { type: Number, default : 0 } }) // Creating collection const collections = mongoose.model( "GFG2" , collection_structure) // Inserting one document collections.create({ name: "aayush" }).then((ans) => { console.log( "Document inserted" ) // Inserting invalid document collections.create({ name: "saini" , marks: "#234" , phone: 981 }).then((ans) => { console.log(ans) }). catch ((err) => { // Printing the documents collections.find().then((ans) => { console.log(ans) }) // Printing the Error Message console.log(err.message) }) }). catch ((err) => { // Printing Error Message console.log(err.message) }) |
Запустите файл index.js, используя команду ниже:
узел index.js
Выход:
Реализация ограничения на сбор MongoDB:
Имя файла- index.js:
Javascript
// Importing mongoose module const mongoose = require( "mongoose" ) // Database Address const url = " mongodb://localhost:27017/GFG " // Connecting to database mongoose.connect(url).then((ans) => { console.log( "ConnectedSuccessful" ) }). catch ((err) => { console.log( "Error in the Connection" ) }) // Calling Schema class const Schema = mongoose.Schema; // Creating Structure of the collection const collection_structure = new Schema({ name: { type: String, unique: true , require: true } , marks: { type: Number, default : 0 } }) // Creating collection const collections = mongoose.model( "GFG2" , collection_structure) // Inserting one document collections.create({ name: "aayush" , marks: 12, }).then((ans) => { console.log( "Document inserted" ) // Inserting invalid document }). catch ((err) => { console.log(err.message); }) |
Запустите файл index.js, используя команду ниже:
узел index.js
Вывод: [Первая запись уже присутствует в коллекции]