Mongoose JavaScript (Node.js): पूरी गाइड उदाहरणों के साथ

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

Mongoose क्या है और इसकी ज़रूरत क्यों है?

Mongoose MongoDB और Node.js के लिए एक Object Data Modeling (ODM) लाइब्रेरी है। यह आपके एप्लिकेशन के डेटा को मॉडल करने का एक शक्तिशाली, स्कीमा-आधारित तरीका प्रदान करती है। अगर आप Node.js में MongoDB के साथ काम कर रहे हैं, तो Mongoose डेटा मैनेजमेंट के लिए डी-फैक्टो स्टैंडर्ड है।

इसकी ज़रूरत क्यों है? MongoDB एक NoSQL डेटाबेस है जो डेटा को JSON जैसे दस्तावेज़ों में स्टोर करता है। रिलेशनल डेटाबेस के विपरीत, इसे सख्त स्कीमा की ज़रूरत नहीं होती। यह लचीलापन देता है, लेकिन बड़े प्रोजेक्ट्स में अव्यवस्था पैदा कर सकता है। Mongoose इस समस्या को हल करता है, एक एब्स्ट्रैक्शन लेयर जोड़कर जो:

  • स्कीमा (Schemas) परिभाषित करता है: आप अपने दस्तावेज़ों की संरचना बताते हैं: कौन से फील्ड हैं, उनका टाइप क्या है, डिफ़ॉल्ट वैल्यू क्या है, और क्या वे अनिवार्य हैं।
  • डेटा वैलिडेट करता है: डेटाबेस में सेव करने से पहले, Mongoose जाँचता है कि डेटा आपकी स्कीमा से मेल खाता है या नहीं। यह "गलत" डेटा को लिखे जाने से रोकता है।
  • सुविधाजनक तरीके प्रदान करता है: MongoDB को रॉ क्वेरी लिखने के बजाय, आप आसान तरीकों का उपयोग करते हैं जैसे .find(), .create(), .updateOne()।
  • रिलेशनशिप मैनेज करता है: आप populate() का उपयोग करके अलग-अलग कलेक्शन के दस्तावेज़ों को आसानी से जोड़ सकते हैं (जैसे, यूज़र और उसके ऑर्डर)।
  • Middleware (हुक्स): कुछ ऑपरेशनों से पहले या बाद में कोड चलाने की अनुमति देता है (जैसे, सेव करने से पहले पासवर्ड को हैश करना)।

सीधे शब्दों में: Mongoose आपके JavaScript कोड और MongoDB के बीच एक "पुल" है, जो डेटाबेस के साथ काम को संरचित, सुरक्षित और सुविधाजनक बनाता है।

Mongoose इंस्टॉल करना

अपने Node.js प्रोजेक्ट में Mongoose इंस्टॉल करना npm (Node Package Manager) के माध्यम से किया जाता है। सुनिश्चित करें कि आपके पास Node.js और npm इंस्टॉल है।

अपने प्रोजेक्ट की रूट डायरेक्टरी में टर्मिनल खोलें और यह कमांड चलाएँ:

npm install mongoose

यह कमांड Mongoose का नवीनतम स्थिर वर्जन इंस्टॉल करेगा और इसे आपकी package.json फ़ाइल के dependencies सेक्शन में जोड़ देगा।

आपको एक इंस्टॉल और चालू MongoDB सर्वर की भी आवश्यकता होगी। आप इसे लोकली इंस्टॉल कर सकते हैं या MongoDB Atlas जैसी क्लाउड सेवा का उपयोग कर सकते हैं।

कोड उदाहरण के साथ त्वरित शुरुआत

चलिए एक सरल एप्लिकेशन बनाते हैं जो MongoDB से कनेक्ट होता है और यूज़र की जानकारी सेव करता है।

  1. Mongoose को डेटाबेस से कनेक्ट करें:
// app.js
const mongoose = require('mongoose');

// MongoDB कनेक्शन स्ट्रिंग ('mydatabase' को अपने DB के नाम से बदलें)
const mongoURI = 'mongodb://localhost:27017/mydatabase';

mongoose.connect(mongoURI)
  .then(() => console.log('MongoDB से सफलतापूर्वक कनेक्ट हुआ!'))
  .catch(err => console.error('कनेक्शन में त्रुटि:', err));
  1. स्कीमा और मॉडल परिभाषित करें:
// यूज़र के लिए स्कीमा (Schema) परिभाषित करें
const userSchema = new mongoose.Schema({
  name: { type: String, required: true },
  email: { type: String, required: true, unique: true },
  age: { type: Number, default: 18 }
});

// स्कीमा के आधार पर मॉडल (Model) बनाएँ
const User = mongoose.model('User', userSchema);
  1. दस्तावेज़ बनाएँ और सेव करें:
async function createUser() {
  try {
    // मॉडल का एक इंस्टेंस बनाएँ
    const newUser = new User({
      name: 'राहुल शर्मा',
      email: 'rahul@example.com',
      age: 25
    });

    // यूज़र को डेटाबेस में सेव करें
    const savedUser = await newUser.save();
    console.log('यूज़र सेव हो गया:', savedUser);
  } catch (error) {
    console.error('सेव करने में त्रुटि:', error.message);
  }
}

createUser();

इसे चलाने के बाद

अनुशंसाएँ