Mongoose (ODM)
Mongoose Schemas
Defining Structure
💡 Mongoose, schema, EK, "BLUEPRINT" hai, HAR, DOCUMENT, ke, liye — MongoDB, KHUD, schema-less, hai, LEKIN, Mongoose, EK, JavaScript, LAYER, ADD, karta hai, JO, STRUCTURE, aur, VALIDATION, ENFORCE, karta, hai, APPLICATION, LEVEL, PAR.
mongoose.Schema(), FIELD, NAMES, aur, UNKE, TYPES, DEFINE, karta hai — required, unique, min/max, JAISE, VALIDATION, RULES, BHI, YAHI, SPECIFY, kiye, jaate, HAIN.
timestamps: true, OPTION, se, createdAt/updatedAt, FIELDS, AUTOMATICALLY, MANAGE, ho, jaate, HAIN — HAR, SAVE/UPDATE, PAR, MongoDB, se, MANUALLY, TRACK, karne, ki, ZAROORAT, NAHI.
const mongoose = require("mongoose");
const userSchema = new mongoose.Schema({
name: { type: String, required: true },
email: { type: String, required: true, unique: true },
age: { type: Number, min: 0, max: 120 },
role: { type: String, enum: ["user", "admin"], default: "user" }
}, { timestamps: true });📋
Mongoose, schema, EK, "BLUEPRINT" hai, HAR, DOCUMENT, ke, liye — MongoDB, KHUD, schema-less, hai, LEKIN, Mongoose, EK, JavaScript, LAYER, ADD, karta hai, JO, STRUCTURE, aur, VALIDATION, ENFORCE, karta, hai, APPLICATION, LEVEL, PAR.
1 / 2
⚡ Quick Recap
- Schema = blueprint, fields/types/validation rules DEFINE karta hai
- required, unique, min/max, enum = common, validation, options
- timestamps: true = createdAt/updatedAt, automatically, manage
Is page mein (2 subtopics)
Schema, fields, PAR, CUSTOM, validate, function, DEFINE, ki, ja, sakti, hai — jaise, EK, password, field, ki, complexity, check, karna, (built-in, min/max, se, ZYAADA, complex, RULES, ke, liye).
email: {
type: String,
validate: {
validator: (v) => /^.+@.+\..+$/.test(v),
message: "Invalid email format"
}
}schema.methods, se, INSTANCE, methods, DEFINE, kiye, ja, sakte, hain (HAR, document, PAR, available). schema.statics, se, MODEL-LEVEL, methods, DEFINE, hote, hain (jaise, User.findByEmail()).
Tip: Custom, methods, se, business, logic, (jaise, comparePassword()) model, ke, saath, hi, ENCAPSULATE, ho, jaati, hai, controllers, mein, SCATTER, hone, ke, bajaye.