Cách kết nối database mongodb với mongoose và tạo model

Cách kết nối database mongodb với mongoose và tạo model

Mongoose là một thư viện Object Data Modeling (ODM) dành cho MongoDB và Node.js. Thư viện này giúp bạn dễ dàng quản lý các thao tác CRUD với database và cung cấp các tính năng mạnh mẽ như xác thực dữ liệu, middleware, v.v. Trong bài viết này, chúng ta sẽ tìm hiểu cách kết nối MongoDB bằng Mongoose và tạo một model.

Cách cài đặt mongoose

Để cài đặt mongoose chúng ta sẽ thực hiện cài đặt theo lệnh sau:

npm install mongoose

Cách kết nối database mongodb với mongoose

Để thực hiện kết nối database mongodb chúng ta xây dựng một function để thực hiện kết nối như sau:

// Hàm thực hiện kết nối DB
const connectDB = async ()=>{
try {
// Chuỗi kết nối MongoDB
const uri = 'mongodb://localhost:27017/ten_database';
await mongoose.connect(uri)
console.log(`Kết nối DB thành công`);
} catch (error) {
console.log(`Kết nối DB không thành công`);
}
}

Sau khi tạo hàm kết nối ta thực hiện gọi hàm kết nối database như sau:

app.listen(port,async()=>{
await connectDB()
console.log(`Endpoint http://localhost:${port}`);
})

Cách tạo Model trong mongoose

Model trong Mongoose là cách bạn xác định các cáu trúc dữ liệu trong MongoDB. Để tạo Model ta sẽ tạo một folder models trong thư mục dự án. Trong thư mục models tạo file model tương ứng. Ví dụ ta sẽ tạo một model sinh viên với các field là: name,email,address,age,classname thì trong thư mục models, tạo file students.js

Nội dung file students.js

import { Schema,model } from "mongoose";
const StudentSchema = Schema({
name:{
type: String,
required: true, // Bắt buộc
},
email:{
type: String,
required: true,
unique: true, // Email duy nhất
},
address:{
type: String,
required: true, // Bắt buộc
},
age:Number,
classname:{
type: String,
required: true, // Bắt buộc
}
},
{
timestamps:true
}
)
export const StudentModel = model("students",StudentSchema)


Vote1