23- كورس Node.js بالعربي – MongoDB Get Started

MongoDB Get Started في Node.js

البدء مع MongoDB في Node.js

تعتبر MongoDB واحدة من أشهر قواعد البيانات غير العلائقية NoSQL، والتي تُستخدم على نطاق واسع في تطوير التطبيقات الحديثة. في هذا المقال، سوف نستعرض كيفية البدء مع MongoDB في بيئة Node.js باستخدام مكتبة Mongoose، وهي مكتبة شهيرة لتسهيل التعامل مع MongoDB.

إعداد البيئة

قبل البدء في استخدام MongoDB مع Node.js، يجب التأكد من تثبيت Node.js وnpm على جهازك. ثم تحتاج إلى تثبيت MongoDB وتشغيلها على جهازك أو استخدام خدمة MongoDB Atlas السحابية. بعد ذلك، يمكنك إنشاء مشروع Node.js جديد وتثبيت مكتبة Mongoose باستخدام الأمر التالي:

npm install mongoose

بعد تثبيت Mongoose، يمكنك إنشاء ملف JavaScript جديد والبدء في كتابة الكود للتواصل مع قاعدة البيانات.

الاتصال بقاعدة البيانات

للاتصال بقاعدة البيانات، يجب أولاً استيراد مكتبة Mongoose في ملفك. بعد ذلك، يمكنك استخدام دالة connect للاتصال بقاعدة البيانات. إليك مثال على كيفية القيام بذلك:

const mongoose = require('mongoose');

mongoose.connect('mongodb://localhost:27017/mydatabase', { useNewUrlParser: true, useUnifiedTopology: true })
    .then(() => console.log('تم الاتصال بقاعدة البيانات بنجاح'))
    .catch(err => console.error('فشل الاتصال بقاعدة البيانات', err));

في هذا المثال، يتم الاتصال [شركة برمجة مصرية] بقاعدة [شركة برمجة مصرية] بيانات محلية باسم mydatabase. يمكنك استبدال رابط الاتصال برابط قاعدة البيانات الخاصة بك إذا كنت تستخدم MongoDB Atlas.

إنشاء نموذج (Schema) ووثيقة (Document)

بعد الاتصال بقاعدة البيانات، يمكنك إنشاء نموذج يحدد هيكل البيانات التي ستخزنها في MongoDB. يتيح لك Mongoose تحديد نوع البيانات والحقول المطلوبة. إليك مثال على كيفية إنشاء نموذج ووثيقة:

const userSchema = new mongoose.Schema({
    name: { type: String, required: true },
    email: { type: String, required: true, unique: true },
    age: { type: Number, default: 18 }
});

const User = mongoose.model('User', userSchema);

const newUser = new User({
    name: 'أحمد',
    email: 'ahmed@example.com',
    age: 25
});

newUser.save()
    .then(() => console.log('تم حفظ المستخدم بنجاح'))
    .catch(err => console.error('فشل في حفظ المستخدم', err));

في هذا المثال، قمنا بإنشاء نموذج للمستخدم يتضمن الحقول الاسم والبريد الإلكتروني والعمر. ثم أنشأنا وثيقة جديدة وقمنا بحفظها في قاعدة البيانات.

استرجاع البيانات من قاعدة البيانات

للاستعلام عن البيانات من قاعدة البيانات، يمكنك استخدام الدوال المتاحة في Mongoose مثل find وfindOne. إليك مثال على كيفية استرجاع جميع المستخدمين من قاعدة البيانات:

User.find()
    .then(users => console.log('المستخدمون:', users))
    .catch(err => console.error('فشل في استرجاع المستخدمين', err));

كما يمكنك استخدام findOne لاسترجاع مستخدم واحد بناءً على شرط معين، مثل البريد الإلكتروني:

User.findOne({ email: 'ahmed@example.com' })
    .then(user => console.log('المستخدم:', user))
    .catch(err => console.error('فشل في استرجاع المستخدم', err));

بهذه الطريقة، يمكنك البدء في استخدام MongoDB مع Node.js وتنفيذ عمليات CRUD (إنشاء، قراءة، تحديث، حذف) بكل سهولة باستخدام Mongoose.