Hướng dẫn connect mongodb with node js using mongoose - kết nối mongodb với nút js bằng mongoose

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
3

const 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
3

mongoose.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.

  1. Mở tab cụm của bạn trong Atlas MongoDB và nhấp vào
    $ yarn add express mongoose
    
    3.

Hướng dẫn connect mongodb with node js using mongoose - kết nối mongodb với nút js bằng mongoose

  1. Chọn
    $ yarn add express mongoose
    
    4 và chọn node.js cho trình điều khiển.
  2. Sao chép chuỗi kết nối.

Hướng dẫn connect mongodb with node js using mongoose - kết nối mongodb với nút js bằng mongoose

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
3

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
  }
);

Đ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

$ yarn add express mongoose
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.

Để đả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());
3

const 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());
9

const 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
0

Chú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
1

Chú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
2

Tạ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.

Hướng dẫn connect mongodb with node js using mongoose - kết nối mongodb với nút js bằng mongoose

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.

Hướng dẫn connect mongodb with node js using mongoose - kết nối mongodb với nút js bằng mongoose

Đ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

Làm thế nào chúng ta kết nối MongoDB với NodeJS?

Để kết nối một nút. Ứng dụng JS cho MongoDB, chúng ta phải sử dụng một thư viện tên là Mongoose. Mongoose. Connect ("MongoDB: // LocalHost: 27017/CollectionName", {UsenewurlParser: true, useUnifiedTopology: true});use a library called Mongoose. mongoose. connect("mongodb://localhost:27017/collectionName", { useNewUrlParser: true, useUnifiedTopology: true });

Tôi có thể sử dụng MongoDB và Mongoose cùng một lúc không?

Có, chúng tôi thực sự sử dụng nhiều trình điều khiển, trong một ứng dụng sản xuất.Chúng tôi cần kết nối với nhiều cơ sở dữ liệu và Mongoose chỉ có thể kết nối với một dB.Vì vậy, chúng tôi sử dụng MongoDB cho các kết nối với cơ sở dữ liệu thứ cấp.Thay vào đó, nó nên sử dụng Mongojs.. We need connections to multiple databases, and mongoose is only able to connect to one DB. So we use MongoDB for the connections to the secondary databases. It should be the same using MongoJS instead.

Việc sử dụng Mongoose trong NodeJS là gì?

Mongoose hoạt động như một mặt trước của MongoDB, một cơ sở dữ liệu NoQuery nguồn mở sử dụng mô hình dữ liệu định hướng tài liệu.Một "bộ sưu tập" của "tài liệu" trong cơ sở dữ liệu MongoDB tương tự như "bảng" "hàng" trong cơ sở dữ liệu quan hệ.

Chúng ta có thể sử dụng MongoDB với NodeJS không?

MongoDB là một nền tảng dữ liệu định hướng tài liệu hiện đại, có mục đích chung, đã được kết hợp rộng rãi với Node.js trong các ngăn xếp công nghệ phổ biến như Stack trung bình (MongoDB, Express. JS, Angularjs và Node. JS) và Stack Mern (MongoDB, Express.has been widely paired with Node. js in popular tech stacks such as the MEAN stack (MongoDB, Express. js, AngularJS, and Node. js) and the MERN stack (MongoDB, Express.