Express + MongoDB (Mongoose) CRUD
Express + MongoDB (Mongoose) CRUD Tutorial
একটি পূর্ণাঙ্গ CRUD অ্যাপ বানানোর সম্পূর্ণ গাইড
CRUD কি?
CRUD হলো চারটি বেসিক ডাটাবেস অপারেশন:
- C — Create (নতুন ডাটা তৈরি)
- R — Read (ডাটা পড়া)
- U — Update (ডাটা পরিবর্তন)
- D — Delete (ডাটা মুছে ফেলা)
Express.js + MongoDB + Mongoose ব্যবহার করে আমরা খুব সহজেই একটি CRUD অ্যাপ তৈরি করতে পারি।
প্রজেক্ট সেটআপ
mkdir express-crud
cd express-crud
npm init -y
npm install express mongoose cors
server.js তৈরি করুন
const express = require("express");
const mongoose = require("mongoose");
const app = express();
app.use(express.json());
mongoose.connect("mongodb://localhost:27017/crudDB")
.then(() => console.log("MongoDB Connected"))
.catch(err => console.log(err));
app.listen(5000, () => {
console.log("Server running on port 5000");
});
Mongoose Model তৈরি
ধরুন আমরা একটি "Student" মডেল তৈরি করবো:
const mongoose = require("mongoose");
const studentSchema = new mongoose.Schema({
name: {
type: String,
required: true
},
class: {
type: Number,
required: true
},
marks: {
type: Number,
required: true
}
});
module.exports = mongoose.model("Student", studentSchema);
CRUD API Routes
1. Create (POST)
app.post("/students", async (req, res) => {
try {
const student = new Student(req.body);
const saved = await student.save();
res.json(saved);
} catch (err) {
res.status(500).json({ error: err });
}
});
2. Read All (GET)
app.get("/students", async (req, res) => {
const data = await Student.find();
res.json(data);
});
3. Read Single (GET by ID)
app.get("/students/:id", async (req, res) => {
const data = await Student.findById(req.params.id);
res.json(data);
});
4. Update (PUT)
app.put("/students/:id", async (req, res) => {
const updated = await Student.findByIdAndUpdate(
req.params.id,
req.body,
{ new: true }
);
res.json(updated);
});
5. Delete (DELETE)
app.delete("/students/:id", async (req, res) => {
await Student.findByIdAndDelete(req.params.id);
res.json({ message: "Student Deleted" });
});
Express + MongoDB CRUD Workflow
- Client → API Request পাঠায়
- Express.js → Request গ্রহণ করে
- Mongoose → MongoDB তে ডাটা CRUD করে
- Response → Client এর কাছে ফিরে যায়
উপসংহার
Express.js এবং MongoDB (Mongoose) ব্যবহার করে CRUD করা খুবই সহজ এবং স্কেলেবল। এই স্ট্রাকচার ব্যবহার করে আপনি যেকোনো বড় প্রজেক্টের ব্যাকএন্ডও তৈরি করতে পারবেন।
👼 Quiz
/