في عملية تطوير تطبيقات الويب ، يعد الاتصال بقاعدة البيانات والاستعلام عنها جزءًا مهمًا. في هذه المقالة ، سوف نستكشف كيفية الاتصال بقاعدة بيانات MongoDB والاستعلام عنها في أحد Express التطبيقات. يعد MongoDB خيارًا شائعًا لتخزين البيانات في تطبيقات Node.js نظرًا لمرونته وقابليته للتوسع.
ربط MongoDB بـ Express:
للبدء ، نحتاج إلى تثبيت حزمة Mongoose عبر npm وتكوين الاتصال بقاعدة بيانات MongoDB.
npm install express mongoose
فيما يلي مثال على كيفية توصيل MongoDB بـ Express:
const mongoose = require('mongoose');
const express = require('express');
const app = express();
// Connect to the MongoDB database
mongoose.connect('mongodb://localhost/mydatabase', { useNewUrlParser: true, useUnifiedTopology: true })
.then(() => {
console.log('Connected to MongoDB');
// Continue writing routes and logic in Express
})
.catch((error) => {
console.error('Error connecting to MongoDB:', error);
});
// ... Other routes and logic in Express
app.listen(3000,() => {
console.log('Server started');
});
الاستعلام عن البيانات من MongoDB:
بعد الاتصال بنجاح بـ MongoDB ، يمكننا إجراء استعلامات البيانات داخل Express التطبيق. فيما يلي مثال على الاستعلام عن البيانات من MongoDB باستخدام Mongoose:
const mongoose = require('mongoose');
// Define the schema and model
const userSchema = new mongoose.Schema({
name: String,
age: Number
});
const User = mongoose.model('User', userSchema);
// Query data from MongoDB
User.find({ age: { $gte: 18 } })
.then((users) => {
console.log('List of users:', users);
// Continue processing the returned data
})
.catch((error) => {
console.error('Error querying data:', error);
});
في المثال أعلاه ، نحدد مخططًا لكائن "المستخدم" ونستخدم النموذج لإجراء استعلامات البيانات. هنا ، نقوم بالاستعلام عن جميع المستخدمين الذين تزيد أعمارهم عن 18 عامًا أو مساويًا لها ونقوم بتسجيل النتائج التي تم إرجاعها.
الخلاصة: في هذه المقالة ، اكتشفنا كيفية الاتصال والاستعلام عن قاعدة بيانات MongoDB في أحد Express التطبيقات. يوفر لنا استخدام MongoDB كحل قاعدة بيانات لتطبيقات Node.js خيارًا مرنًا وقويًا. من خلال استخدام Mongoose ، يمكننا بسهولة إجراء استعلامات البيانات وإنشاء تطبيقات ويب موثوقة.