Mongoose.js kết nối các cụm hoặc bộ sưu tập MongoDB của bạn với ứng dụng Node.js của bạn. Nó cho phép bạn tạo các lược đồ cho tài liệu của bạn. Mongoose cung cấp rất nhiều chức năng khi tạo và làm việc với các lược đồ.
Trong hướng dẫn này, chúng tôi sẽ xem xét cách kết nối một thể hiện MongoDB với ứng dụng Node.js.
Cách kết nối MongoDB với Node.js bằng Mongoose
MongoDB là một trong những cơ sở dữ liệu NO-SQL được sử dụng rộng rãi nhất trong thế giới nhà phát triển hiện nay. Cơ sở dữ liệu NO-SQL cho phép các nhà phát triển gửi và truy xuất dữ liệu dưới dạng tài liệu JSON, thay vì các đối tượng SQL. Để làm việc với MongoDB trong ứng dụng Node.js, chúng ta có thể sử dụng Mongoose.
Điều kiện tiên quyết
Trước khi chúng tôi tiếp tục, bạn sẽ cần phải có những điều sau:
- Node.js được cài đặt trên máy của bạn.
- Một ví dụ MongoDB chạy trên máy của bạn. Bạn đã giành được điều này nếu bạn muốn sử dụng MongoDB Atlas.
- Một số kiến thức về Node.js và Express.js.
Bước 1 - Cài đặt Mongoose trên Môi trường Node.js
Tạo và điều hướng đến một thư mục mới bằng cách chạy các lệnh sau trên thiết bị đầu cuối.
$ mkdir mongoose_tutorial
$ cd mongoose_tutorial
Sau đó cài đặt Express và Mongoose bằng cách thực thi lệnh sau trên thiết bị đầu cuối.
$ npm install express mongoose --save
Nếu bạn đang sử dụng sợi, chạy:
$ yarn add express mongoose
Bước 2 - Tạo kết nối
Tạo một tệp mới
$ npm install express mongoose --save
3 để khởi động máy chủ Express.js của chúng tôi. Tải $ npm install express mongoose --save
4 và $ npm install express mongoose --save
5 bằng cách thêm mã sau vào $ npm install express mongoose --save
3.$ npm install express mongoose --save
3const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
Sau đó kết nối với một thể hiện MongoDB cục bộ bằng hàm
$ npm install express mongoose --save
8.$ npm install express mongoose --save
3mongoose.connect['mongodb://localhost:27017/usersdb',
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
Chúng tôi vượt qua
$ yarn add express mongoose
0, v.v. cho $ npm install express mongoose --save
8 để tránh $ yarn add express mongoose
2.Để tạo kết nối với MongoDB Atlas, hãy làm theo các bước tiếp theo.
- Mở tab cụm của bạn trong Atlas MongoDB và nhấp vào
3.$ yarn add express mongoose
- Chọn
4 và chọn node.js cho trình điều khiển.$ yarn add express mongoose
- Sao chép chuỗi kết nối.
Với kết nối trong tay, hãy tạo các biến sau và thay thế các giá trị của chúng bằng thông tin thực tế của bạn.
$ npm install express mongoose --save
3const username = "";
const password = "";
const cluster = "";
const dbname = "myFirstDatabase";
mongoose.connect[
`mongodb+srv://${username}:${password}@${cluster}.mongodb.net/${dbname}?retryWrites=true&w=majority`,
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
Điều quan trọng cần lưu ý là biến cụm là các giá trị xuất hiện giữa
6 và$ yarn add express mongoose
7. Trong trường hợp của tôi, biến cụm là$ yarn add express mongoose
8.$ yarn add express mongoose
Để đảm bảo kết nối của bạn đã thành công, hãy thêm mã sau ngay bên dưới
$ npm install express mongoose --save
8 của bạn.$ npm install express mongoose --save
3// ...
const db = mongoose.connection;
db.on["error", console.error.bind[console, "connection error: "]];
db.once["open", function [] {
console.log["Connected successfully"];
}];
Sau đó, đặt ứng dụng để nghe cổng 3000.
$ npm install express mongoose --save
3// ...
app.use[Router];
app.listen[3000, [] => {
console.log["Server is running at port 3000"];
}];
Chúng tôi sẽ tạo
const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
2 sau.Bước 3 - Tạo lược đồ
Bây giờ, hãy để xác định một lược đồ thu thập cho ứng dụng của chúng tôi.
Tạo một tệp khác
const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
3 và thêm mã sau.const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
3const mongoose = require["mongoose"];
const UserSchema = new mongoose.Schema[{
name: {
type: String,
required: true,
},
age: {
type: Number,
default: 0,
},
}];
const User = mongoose.model["User", UserSchema];
module.exports = User;
Chúng tôi tạo một lược đồ
const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
5 bằng phương pháp const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
6. Lược đồ thu thập các trường const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
7 và const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
8 được gửi từ yêu cầu.Sau đó chúng tôi xuất lược đồ bằng 2 dòng cuối cùng.
Bước 4 - Tạo điểm cuối bài
Tạo một tệp mới
const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
9. Tệp này xác định các điểm cuối cho ứng dụng của chúng tôi.Tải
$ npm install express mongoose --save
5 và lược đồ chúng tôi đã tạo trong bước 3 bằng cách thêm mã sau.const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
9const express = require["express"];
const userModel = require["./models"];
const app = express[];
Sau đó tạo điểm cuối bài bằng cách thêm mã sau.
const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
9$ npm install express mongoose --save
0Chúng tôi tạo một tuyến đường
mongoose.connect['mongodb://localhost:27017/usersdb',
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
3 để thêm người dùng mới vào cơ sở dữ liệu. Chúng tôi phân tích nội dung sẽ được lưu vào cơ sở dữ liệu bằng dòng mongoose.connect['mongodb://localhost:27017/usersdb',
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
4.Sau đó, chúng tôi sử dụng khối
mongoose.connect['mongodb://localhost:27017/usersdb',
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
5 để lưu đối tượng vào cơ sở dữ liệu bằng phương thức mongoose.connect['mongodb://localhost:27017/usersdb',
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
6.Bước 5 - Tạo điểm cuối Get
Thêm các dòng mã sau vào tệp
const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
9.const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
9$ npm install express mongoose --save
1Chúng tôi tạo một tuyến đường
mongoose.connect['mongodb://localhost:27017/usersdb',
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
9 để truy xuất tất cả người dùng được lưu bằng tuyến đường mongoose.connect['mongodb://localhost:27017/usersdb',
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
3. Chúng tôi thu thập những người dùng này từ cơ sở dữ liệu bằng phương thức const username = "";
const password = "";
const cluster = "";
const dbname = "myFirstDatabase";
mongoose.connect[
`mongodb+srv://${username}:${password}@${cluster}.mongodb.net/${dbname}?retryWrites=true&w=majority`,
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
1. Sau đó, chúng tôi sử dụng một khối mongoose.connect['mongodb://localhost:27017/usersdb',
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
5 để ‘gửi cho người dùng đến điểm cuối này.Cuối cùng, xuất các điểm cuối này bằng cách thêm dòng bên dưới.
const express = require["express"];
const mongoose = require["mongoose"];
const Router = require["./routes"]
const app = express[];
app.use[express.json[]];
9$ npm install express mongoose --save
2Tại thời điểm này, ứng dụng của bạn đã sẵn sàng. Phục vụ ứng dụng bằng cách chạy lệnh bên dưới.
Bước 6 - Kiểm tra các điểm cuối
Bây giờ, hãy để thử nghiệm hai điểm cuối chúng tôi đã tạo ở trên.
Mở Postman và thực hiện yêu cầu
const username = "";
const password = "";
const cluster = "";
const dbname = "myFirstDatabase";
mongoose.connect[
`mongodb+srv://${username}:${password}@${cluster}.mongodb.net/${dbname}?retryWrites=true&w=majority`,
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
4 cho điểm cuối const username = "";
const password = "";
const cluster = "";
const dbname = "myFirstDatabase";
mongoose.connect[
`mongodb+srv://${username}:${password}@${cluster}.mongodb.net/${dbname}?retryWrites=true&w=majority`,
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
5.Một
const username = "";
const password = "";
const cluster = "";
const dbname = "myFirstDatabase";
mongoose.connect[
`mongodb+srv://${username}:${password}@${cluster}.mongodb.net/${dbname}?retryWrites=true&w=majority`,
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
6 mới được thêm vào cơ sở dữ liệu. Bạn có thể kiểm tra bộ sưu tập của bạn để xác nhận điều này.Thực hiện yêu cầu
const username = "";
const password = "";
const cluster = "";
const dbname = "myFirstDatabase";
mongoose.connect[
`mongodb+srv://${username}:${password}@${cluster}.mongodb.net/${dbname}?retryWrites=true&w=majority`,
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
7 cho điểm cuối const username = "";
const password = "";
const cluster = "";
const dbname = "myFirstDatabase";
mongoose.connect[
`mongodb+srv://${username}:${password}@${cluster}.mongodb.net/${dbname}?retryWrites=true&w=majority`,
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
8.Điểm cuối trả về một danh sách của tất cả các
const username = "";
const password = "";
const cluster = "";
const dbname = "myFirstDatabase";
mongoose.connect[
`mongodb+srv://${username}:${password}@${cluster}.mongodb.net/${dbname}?retryWrites=true&w=majority`,
{
useNewUrlParser: true,
useFindAndModify: false,
useUnifiedTopology: true
}
];
9 được thêm vào cơ sở dữ liệu.Sự kết luận
Trong hướng dẫn này, chúng tôi đã xem xét cách thiết lập Mongoose. Chúng tôi cũng đã xem xét cách thiết lập kết nối cơ sở dữ liệu và cách tạo lược đồ cho các bộ sưu tập của chúng tôi. Mongoose có thể được sử dụng để kết nối với cả MongoDB và MongoDB Atlas với ứng dụng Node.js của bạn.
Tôi hy vọng bạn tìm thấy bài viết này hữu ích.
Mã hóa hạnh phúc!
Đóng góp đánh giá ngang hàng của: Adrian Murage