Bây giờ chúng tôi đã có một cái nhìn tổng quan nhanh chóng về Mongoose ODMO và
làm thế nào Mongoose mang lược đồ để cấu trúc các tài liệu mà chúng tôi lưu trữ trong MongoDB
của chúng tôi, chúng ta hãy xem cách chúng tôi sử dụng
mô-đun nút Mongoose và sau đó kết hợp nó vào ứng dụng nút của chúng tôi.
Sau đó sử dụng Mongoose để giao tiếp với
máy chủ MongoDB của chúng tôi và sau đó lưu trữ và truy xuất
tài liệu với thông tin cấu trúc trong các tài liệu.
Để bắt đầu bài tập này,
hãy đi đến một vị trí thuận tiện trên máy tính của bạn.
Vì vậy, ở đây tôi đang ở trong thư mục Node JS nơi tôi đã được lưu trữ
tất cả các ví dụ từ khóa học này và sau đó tôi sẽ
tạo ra một thư mục mới có tên là nút Mongoose.
Đây là nơi chúng ta sẽ tạo ra các ứng dụng nút sử dụng Mongoose tiếp theo.
Trong thiết bị đầu cuối hoặc cửa sổ lệnh,
di chuyển đến thư mục nút Mongoose và sau đó khởi tạo một ứng dụng nút ở đó.
Vì vậy, hãy để tôi gõ npm init và sau đó
khởi tạo các ứng dụng nút và sau đó tôi sẽ đặt tên cho ứng dụng
như Node-Mongoose và điểm nhập cảnh là lịch sử git index.js,
từ khóa, tác giả và giấy phép và chúng tôi sẽ nói okay.
Sau khi tập tin package.json nút của bạn được tạo ra,
mở dự án trong trình soạn thảo văn bản mà bạn chọn.
Vì vậy, ở đây tôi có dự án của tôi mở trong Visual Studio.
Hãy để tôi đi vào tập tin package.json và sau đó thêm vào
kịch bản khởi động và sau đó chúng ta sẽ
nói chỉ mục nút bắt đầu như bình thường bất cứ khi nào chúng ta bắt đầu với một ứng dụng nút mới.
Sau đó, đi đến thiết bị đầu cuối hoặc cửa sổ lệnh, hãy cài đặt Mongoose.
Vì vậy, tại dấu nhắc nhập npm cài đặt Mongoose, lưu.
Mà tại thời điểm này là Mongoose 5.1.7.
Vì vậy, đây là những phiên bản mà tôi sẽ sử dụng trong khóa học này.
Sau đó, đi đến ứng dụng của tôi trong trình soạn thảo.
Hãy để tôi tạo một thư mục phụ trong dự án được gọi là Models.
Vì vậy, đây là nơi tôi sẽ được lưu trữ tất cả các mô hình cho ứng dụng của tôi.
Trong thư mục mô hình,
hãy để tôi tạo một tập tin mới có tên là dishes.js.
Vì vậy, đây là nơi tôi sẽ tạo ra lược đồ và mô hình
cho tài liệu món ăn của tôi mà tôi sẽ lưu trữ,
bộ sưu tập các món ăn mà lưu trữ các tài liệu cho mỗi món ăn.
Vì vậy, ngay đây, để tôi nhập khẩu Mongoose đầu tiên.
Vì vậy, chúng tôi sẽ yêu cầu Mongoose trong tập tin này và sau đó nói lược đồ
const là lược đồ Mongoose.
Sau đó, chúng tôi sẽ tạo ra lược đồ ở đây.
Vì vậy, chúng ta sẽ nói const DishSchema mới.
Vì vậy, đây là nơi tôi xác định lược đồ cho món ăn của tôi.
Bên trong lược đồ này, hãy để tôi xác định các giá trị khác nhau.
Vì vậy, tôi sẽ nói tên,
đó là loại String.
Vì vậy, đây là loại Schema và sau đó điều này tôi sẽ khai báo theo yêu cầu.
Vì vậy, tôi sẽ nói thật.
Vì vậy, mỗi tài liệu sẽ có tên như là một trường bắt buộc ở đó và sau đó tôi
cũng sẽ tuyên bố điều này như là ý nghĩa duy nhất rằng
không có hai tài liệu nên có cùng một trường tên trong đó.
Vì vậy, đó là trường đầu tiên trong tài liệu của tôi.
Sau đó, chúng tôi cũng sẽ bao gồm một lĩnh vực khác được gọi là, mô tả.
Mô tả là chuỗi loại và bắt buộc đúng.
Ngoài ra, chúng ta có thể có Mongoose tự động chèn
dấu thời gian vào mô hình của chúng tôi.
Vì vậy, ngay tại đó chúng ta chỉ có thể thiết lập các tem thời gian cờ: true.
Vì vậy, điều này sẽ tự động thêm tạo tại và cập nhật tại,
hai dấu thời gian vào mỗi tài liệu được lưu trữ
trong ứng dụng của chúng tôi và nó sẽ tự động cập nhật các giá trị này.
Bất cứ khi nào chúng tôi cập nhật tài liệu và tạo tại sẽ được tự động
khởi tạo khi tài liệu là người tạo lần đầu tiên của thời gian này.
Sau đó, chúng ta sẽ nói var Món ăn.
Vì vậy, với lược đồ,
bây giờ chúng ta sẽ xây dựng mô hình từ lược đồ này.
Vì vậy, chúng tôi sẽ nói Mongoose mô hình và món ăn,
và điều này sẽ được sử dụng lược đồ món ăn mà chúng tôi vừa tuyên bố trước đó.
Sau đó, chúng tôi sẽ xuất
mô hình này từ tập tin này ở đây.
Vì vậy, chúng ta sẽ nói các món ăn xuất khẩu mô-đun.
Vì vậy, bây giờ chúng tôi đã xây dựng
lược đồ Mongoose và mô hình tương ứng và mô hình bây giờ được xuất khẩu từ đây.
Vì vậy, điều này có thể được nhập khẩu trong ứng dụng của chúng tôi và được sử dụng.
Vì vậy, trong thư mục dự án của chúng tôi,
hãy để tôi tạo một tập tin mới có tên index.js.
Trong tập tin index.js,
trước tiên hãy để tôi yêu cầu Mongoose,
và sau đó chúng ta có thể nói món ăn
const yêu cầu các món ăn mô hình.
Bởi vì chúng tôi đã tạo ra mô hình món ăn trong
các mô hình món ăn tập tin ở đó và sau đó chúng tôi đang yêu cầu nó ở đây.
Bây giờ, để thiết lập kết nối với máy chủ Mongo,
chúng ta sẽ nói const URL mongodb.
Localhost 27017, nhầm lẫn.
Vì vậy, cơ sở dữ liệu này là một trong những mà chúng tôi sẽ kết nối từ ứng dụng của chúng tôi và
sau đó chúng tôi có thể thiết lập kết nối bằng cách nói const kết nối Mongoose.
Mongoose hỗ trợ phương thức kết nối này
, lấy URL làm tham số đầu tiên.
Vì vậy, một khi chúng tôi đã thiết lập điều này,
sau đó chúng tôi chỉ đơn giản là nói kết nối sau đó.
Lưu ý rằng kể từ khi chúng ta đã sử dụng lời hứa,
chúng ta chỉ có thể nói kết nối sau đó và sau đó điều này sẽ mất
một chức năng như tham số
và bên trong đây bây giờ chúng ta có thể kết nối với cơ sở dữ liệu.
Vì vậy, bây giờ một khi kết nối này được thành lập,
hãy để tôi làm một bản ghi giao diện điều khiển
nói kết nối một cách chính xác với máy chủ,
và ở đây tôi có thể tạo ra một D
ish mới bằng cách nói var Dish và sau đó Dish và bên trong đây tôi có thể chỉ định một tài liệu để tôi tạo ra
một Dish mới của loại này và sau đó như vậy trong đây Tôi sẽ
chỉ định hai trường được yêu cầu.
Vì vậy, tôi sẽ nói tên,
mô tả và vì vậy đây là cách bạn sẽ tạo ra một món ăn mới và sau đó một khi chúng tôi tạo ra
một món ăn mới từ mô hình chúng tôi sẽ chỉ đơn giản là nói món ăn mới tiết kiệm.
Phương pháp lưu sẽ gây ra giá trị Dish này được
lưu và sau đó như bạn mong đợi sẽ trả lại một lời hứa và
sau đó ở đây chúng tôi sẽ nhận được giá trị Dish như cuộc gọi trở lại trong đó và sau đó, tôi
chỉ có thể đăng nhập giá trị Dish ở đây và sau đó chúng tôi sẽ nói Dish
tìm thấy và vì vậy chúng tôi sẽ tìm thấy
tất cả các Món ăn và sau đó nói exec.
Các exec sẽ đảm bảo rằng điều này được
thực hiện và rằng nó sẽ trả lại một lời hứa và do đó lời hứa sẽ
được trả lại để sau đó nó có thể
chuỗi các phương pháp để những người còn lại.
Vì vậy, bạn thấy làm thế nào tôi đang sử dụng lời hứa và sau đó tôi gọi phương pháp trước đó để điều này
tìm thấy tất cả các món ăn trong cơ sở dữ liệu của tôi,
trong bộ sưu tập Dishes và sau đó làm cho nó có sẵn cho tôi.
Vì vậy, khi tôi nhận được các món ăn sau đó tôi chỉ có thể giao diện điều khiển đăng nhập các món ăn chỉ để xem những gì được
trả lại và điều này rõ ràng ở giai đoạn
này nên trả lại một món ăn duy nhất mà tôi đã chèn vào
bộ sưu tập món ăn của tôi và sau đó chúng tôi sẽ nói
trở lại món ăn loại bỏ với
một đối tượng JavaScript trống mà sẽ loại bỏ tất cả các món ăn từ
cơ sở dữ liệu và trả về
kết nối mongoose đóng mà đóng kết nối với cơ sở dữ liệu.
Và bắt gặp bất kỳ lỗi nào tại thời điểm này.
Vì vậy, chúng tôi sẽ sử dụng bắt và sau đó giao diện điều khiển đăng nhập.
Đó là nó. Vì vậy, những gì chúng tôi đang làm ở đây là chúng tôi đang tạo ra món ăn mới này và sau đó chúng tôi đang
tiết kiệm món ăn sau đó chúng tôi đang tìm thấy tất cả các món ăn từ bộ sưu tập.
Đó là nó. Chúng tôi đang sử dụng lời hứa ở đây,
nên chúng tôi đã xích tất cả các hang trong này. Đó là nó.
Hãy lưu các thay đổi và sau đó xem ứng dụng này thực hiện.
Đi vào thiết bị đầu cuối,
tại dấu nhắc loại npm bắt đầu và bạn sẽ
thấy rằng ứng dụng nút của tôi chạy và sau đó nó cho thấy,
đầu tiên, rằng nó đã tạo ra Dish đặc biệt này.
Lưu ý đặc biệt, rằng hai lĩnh vực này,
cập nhật tại và tạo tại,
hai dấu thời gian này đã tự động được thêm vào D
ish ở đây và do đó bạn có thể thấy rằng tạo tại và
cập nhật tại timestamps là chính xác giống nhau tại thời điểm này và
sau đó ID cũng được tự động thêm trong.
Trong bước tiếp theo, chúng tôi đang in ra tất cả các món ăn đã được lấy ra và vì vậy bạn
có thể thấy rằng một món ăn duy nhất là trong bộ sưu tập, bộ
sưu tập món ăn, và đó là những gì được in ra trên màn hình ở đây.
Bây giờ chúng ta hãy khởi tạo kho lưu trữ Git và sau đó chúng ta hãy thiết lập các tập tin gitignore got
để đi đến trình soạn thảo sau đó chúng ta tạo ra tập tin.gitignore và sau đó thêm
các module nút vào tập tin gitignore và lưu các thay đổi và
sau đó quay trở lại dấu nhắc cho phép tôi
gõ trạng thái git và chúng ta thấy rằng
chúng tôi có những tập tin đã không được kiểm tra trong vì vậy chúng tôi sẽ nói
git add và sau đó git
cam kết thông điệp Mongoose Phần One.
Với điều này, chúng tôi hoàn thành bài tập này.
Trong bài tập này chúng ta đã thấy cách dễ dàng để thiết lập một ứng dụng nút với
mongoose và kết nối với máy chủ MongoDB của chúng tôi và sau đó tương tác với nó.
Bây giờ kể từ khi mongoose xây dựng trên máy chủ
MongoDB, Mongoose có thể truy cập tất cả các phương pháp khác nhau
được hỗ trợ bởi trình điều khiển MongoDB cũng.