1
00:00:03,950 --> 00:00:09,405
Phần thứ hai của bài tập này đề cập đến các

2
00:00:09,405 --> 00:00:15,340
bài được đặt khác nhau và xóa các hoạt động trên các tài liệu phụ bên trong tài liệu.

3
00:00:15,340 --> 00:00:19,380
Như chúng ta đã thấy trong ví dụ cho các món ăn,

4
00:00:19,380 --> 00:00:26,680
chúng tôi thấy rằng các ý kiến được bao gồm bên trong các món ăn chính nó như một tài liệu phụ,

5
00:00:26,680 --> 00:00:31,680
trong cách chúng tôi xác định cả lược đồ nhận xét và lược đồ món ăn,

6
00:00:31,680 --> 00:00:35,150
và sau đó xác định mô hình món ăn bằng cách bao gồm lược đồ nhận xét

7
00:00:35,150 --> 00:00:38,880
vào giản đồ món ăn như một mảng ý kiến.

8
00:00:38,880 --> 00:00:43,580
Và chúng ta đã thấy trong bài tập trước đó như thế nào các ý kiến được bao bọc bên

9
00:00:43,580 --> 00:00:50,990
trong một mảng dưới dạng một mảng tài liệu bên trong mỗi tài liệu món ăn.

10
00:00:50,990 --> 00:00:55,525
Vì vậy, làm thế nào để chúng ta thực hiện sửa đổi cho các ý kiến của mình?

11
00:00:55,525 --> 00:00:59,590
Làm thế nào để chúng ta có được tất cả các danh sách các ý kiến cho một món ăn?

12
00:00:59,590 --> 00:01:06,515
Làm thế nào để chúng ta sửa đổi một bình luận cụ thể trong món ăn và vân vân?

13
00:01:06,515 --> 00:01:10,820
Vì vậy, đây là những gì chúng ta sẽ thấy về làm thế nào để

14
00:01:10,820 --> 00:01:16,130
hỗ trợ họ bằng cách sử dụng nhiều get put bài và xóa các hoạt động trên

15
00:01:16,130 --> 00:01:22,385
các món ăn món ăn slash món ăn ID slash ý kiến và các món ăn

16
00:01:22,385 --> 00:01:29,935
slash món ăn ID slash ý kiến slash nhận xét điểm cuối ID REST API.

17
00:01:29,935 --> 00:01:32,885
Để bắt đầu bài tập này,

18
00:01:32,885 --> 00:01:35,735
một lần nữa, quay trở lại bộ định tuyến món ăn,

19
00:01:35,735 --> 00:01:44,170
họ đã thấy cách chúng tôi xử lý điểm cuối gạch chéo và điểm cuối ID món ăn gạch chéo.

20
00:01:44,170 --> 00:01:50,300
Bây giờ, phần lớn công việc này mà chúng tôi làm ở đây đã hữu ích cho chúng tôi,

21
00:01:50,300 --> 00:01:53,855
vì vậy những gì tôi sẽ làm là sao chép mã này,

22
00:01:53,855 --> 00:02:01,070
và sau đó chúng tôi sẽ chỉnh sửa mã đó một cách thích hợp để xử lý các ý kiến và nhận xét ID.

23
00:02:01,070 --> 00:02:04,250
Vì vậy, tôi sẽ sao chép toàn bộ mã này mà chúng ta có

24
00:02:04,250 --> 00:02:08,750
ở đây cả cho dấu gạch chéo và dấu gạch chéo ID món ăn vàng,

25
00:02:08,750 --> 00:02:14,300
và sau đó chúng tôi sẽ dán nó ngay bên dưới đây một lần nữa.

26
00:02:14,300 --> 00:02:17,795
Và sau đó chúng ta sẽ đi vào và sửa đổi mỗi người trong số họ.

27
00:02:17,795 --> 00:02:21,470
Vì vậy, chúng tôi đã thấy rằng nếu bạn nhìn lại,

28
00:02:21,470 --> 00:02:27,800
người đầu tiên là xử lý dấu gạch chéo mà sẽ được gắn kết trên các món ăn gạch chéo điểm cuối.

29
00:02:27,800 --> 00:02:30,905
Và người tiếp theo là xử lý ID món ăn gạch chéo.

30
00:02:30,905 --> 00:02:37,410
Vì vậy, một trong những thứ ba nên được xử lý gạch chéo món ăn ID slash ý kiến.

31
00:02:37,410 --> 00:02:39,060
Vì vậy, đi xuống

32
00:02:39,060 --> 00:02:49,080
đây, tuyến đường bộ định tuyến món ăn thứ ba này sẽ là slash món ăn ID slash ý kiến.

33
00:02:49,080 --> 00:02:51,300
Và sau đó người cuối cùng, tất nhiên,

34
00:02:51,300 --> 00:02:56,610
sẽ là dấu gạch chéo món ăn ID dấu gạch chéo

35
00:02:56,610 --> 00:03:05,670
ý kiến và sau đó gạch chéo dấu chấm ID nhận xét.

36
00:03:05,670 --> 00:03:09,289
Vì vậy, bây giờ mà chúng tôi đã cập nhật các tuyến đường ở đây,

37
00:03:09,289 --> 00:03:12,380
bây giờ bước tiếp theo là để đi vào và sửa chữa

38
00:03:12,380 --> 00:03:16,310
các mã trong get put post và xóa các hoạt động ở đây.

39
00:03:16,310 --> 00:03:22,025
Vì vậy, chúng tôi sẽ bắt đầu với các món ăn gạch chéo ID slash ý kiến điểm cuối.

40
00:03:22,025 --> 00:03:25,530
Vì vậy, trong trường hợp của các món ăn slash ID slash ý kiến điểm cuối, vì

41
00:03:25,530 --> 00:03:31,425
vậy chúng tôi sẽ làm món ăn tìm thấy nhưng thay vì nói món ăn tìm thấy,

42
00:03:31,425 --> 00:03:38,100
chúng tôi sẽ làm món ăn tìm thấy theo

43
00:03:38,100 --> 00:03:45,595
ID và vì vậy chúng tôi sẽ tìm thấy các món ăn cụ thể mà chúng tôi đang tìm kiếm.

44
00:03:45,595 --> 00:03:53,335
Vì vậy, ở đây, chúng tôi sẽ tìm kiếm rằng req params món ăn ID,

45
00:03:53,335 --> 00:03:57,820
vì vậy chúng tôi sẽ đầu tiên tìm kiếm các món ăn,

46
00:03:57,820 --> 00:04:02,900
và vì vậy điều này sẽ trả lại một món ăn cụ thể.

47
00:04:02,900 --> 00:04:06,865
Vì vậy, khi nó trả lại món ăn cụ thể ở đây,

48
00:04:06,865 --> 00:04:13,475
sau đó những gì họ sẽ kiểm tra bên trong đây

49
00:04:13,475 --> 00:04:20,765
là nếu món ăn không bằng null.

50
00:04:20,765 --> 00:04:24,169
Có thể món ăn không tồn tại,

51
00:04:24,169 --> 00:04:28,000
vì vậy nếu chúng ta tìm kiếm một món ăn cụ thể với một ID món ăn, món ăn

52
00:04:28,000 --> 00:04:29,495
đó có thể không tồn tại,

53
00:04:29,495 --> 00:04:35,360
vì vậy chúng ta cần phải lo lắng về việc xử lý tình huống cụ thể đó.

54
00:04:35,360 --> 00:04:39,590
Vì vậy, chúng ta hãy xử lý phần đó bên trong đây,

55
00:04:39,590 --> 00:04:43,985
và vì vậy nếu nó không phải là null thì điều đó có nghĩa là món ăn tồn tại.

56
00:04:43,985 --> 00:04:51,125
Vì vậy, tôi sẽ cắt nó ra và sau đó dán nó vào đó.

57
00:04:51,125 --> 00:04:54,150
Và sau đó trong trường hợp này,

58
00:04:54,150 --> 00:04:56,940
vì món ăn không phải là null, vì

59
00:04:56,940 --> 00:05:02,300
vậy chúng tôi sẽ trả lại mã trạng thái và tiêu đề thiết lập và

60
00:05:02,300 --> 00:05:07,755
sau đó ở đây chúng tôi sẽ trả lại ý kiến món ăn,

61
00:05:07,755 --> 00:05:13,685
bởi vì chúng tôi được yêu cầu chỉ trả lại ý kiến cho món ăn cụ thể, vì vậy chúng tôi sẽ nói,

62
00:05:13,685 --> 00:05:16,365
“Món ăn tìm theo ID,

63
00:05:16,365 --> 00:05:20,390
sau đó req thông số ID món ăn và sau đó món ăn.”

64
00:05:20,390 --> 00:05:25,540
Và vì vậy chúng tôi sẽ trả lại các ý kiến món ăn ở đây.

65
00:05:25,540 --> 00:05:30,320
Nếu không, vì vậy đây là phần khác.

66
00:05:30,320 --> 00:05:33,500
Vì vậy, có nghĩa là món ăn không tồn tại.

67
00:05:33,500 --> 00:05:35,295
Vì vậy, trong trường hợp này,

68
00:05:35,295 --> 00:05:43,095
chúng tôi sẽ xây dựng một lỗi ở đây bằng cách nói lỗi mới và sau đó chúng tôi sẽ nói

69
00:05:43,095 --> 00:05:56,515
món ăn req params ID món ăn không tìm thấy.

70
00:05:56,515 --> 00:05:59,840
Vì vậy, món ăn đặc biệt này không được tìm thấy,

71
00:05:59,840 --> 00:06:04,100
vì vậy rõ ràng chúng tôi sẽ không thể trả lại lời bình luận cho món ăn không tồn tại.

72
00:06:04,100 --> 00:06:05,560
Vì vậy, trong trường hợp này,

73
00:06:05,560 --> 00:06:09,740
vì vậy chúng tôi sẽ tạo ra một đối tượng lỗi mới và sau đó chúng tôi sẽ

74
00:06:09,740 --> 00:06:15,090
thiết lập trạng thái trong đối tượng lỗi là 404.

75
00:06:15,090 --> 00:06:17,855
Một lần nữa, đây là 404 không tìm thấy,

76
00:06:17,855 --> 00:06:23,420
và sau đó chúng tôi sẽ trở lại Err tiếp theo.

77
00:06:23,420 --> 00:06:24,990
Bây giờ, tại sao chúng ta làm điều này?

78
00:06:24,990 --> 00:06:29,885
Bởi vì nếu bạn trả lại điều này như là một lỗi, như bạn sẽ nhớ lại,

79
00:06:29,885 --> 00:06:33,665
điều này sẽ được xử lý bởi tập tin app.js của bạn,

80
00:06:33,665 --> 00:06:35,565
vì vậy trong tập tin app.js,

81
00:06:35,565 --> 00:06:37,220
ngay ở dưới cùng ở đây,

82
00:06:37,220 --> 00:06:40,700
chúng tôi có trình xử lý lỗi ở đây.

83
00:06:40,700 --> 00:06:42,685
Vì vậy, khi nói đến ở đây,

84
00:06:42,685 --> 00:06:46,560
điều này sẽ thiết lập phần còn lại hoặc trạng thái lỗi chấm trạng thái,

85
00:06:46,560 --> 00:06:48,410
mà chúng tôi đã thiết lập để 404,

86
00:06:48,410 --> 00:06:49,900
vì vậy đó là những gì sẽ được trả lại,

87
00:06:49,900 --> 00:06:56,720
và sau đó nó sẽ chỉ đơn giản là lấy lỗi đó và sau đó hiển thị lỗi đó ở đây.

88
00:06:56,720 --> 00:07:01,020
Vì vậy, điều đó sẽ chăm sóc của render các lỗi.

89
00:07:01,020 --> 00:07:07,080
Vì vậy, điều này sẽ trả lại thông báo lỗi cho khách hàng của chúng tôi.

90
00:07:07,080 --> 00:07:09,490
Đó là những gì chúng tôi đang gọi ở đây,

91
00:07:09,490 --> 00:07:11,090
vì vậy nếu món ăn không tồn tại,

92
00:07:11,090 --> 00:07:15,475
chúng tôi sẽ chỉ trả lại lỗi đó ở đây từ hoạt động get.

93
00:07:15,475 --> 00:07:19,475
Bây giờ, cho bài viết trong trường hợp của bài viết,

94
00:07:19,475 --> 00:07:24,920
chúng tôi hy vọng rằng họ sẽ được

95
00:07:24,920 --> 00:07:30,980
trả lại một ID món ăn và sau đó chúng tôi sẽ tìm kiếm các món ăn,

96
00:07:30,980 --> 00:07:35,840
và sau đó chúng tôi sẽ lấy tập hợp các ý kiến

97
00:07:35,840 --> 00:07:41,555
từ cơ thể và sau đó đẩy nó vào các món ăn ở đó.

98
00:07:41,555 --> 00:07:46,375
Vì vậy, chúng tôi sẽ nói các món ăn, một lần nữa, ở đây,

99
00:07:46,375 --> 00:07:52,750
chúng tôi sẽ phải làm việc tìm kiếm bởi id bởi vì chúng tôi đang tìm kiếm các món ăn cụ thể ở đây.

100
00:07:52,750 --> 00:07:59,485
Vì vậy, đối với bài viết, chúng ta sẽ nói món ăn tìm theo ID sau đó món ăn,

101
00:07:59,485 --> 00:08:01,750
và như vậy bên trong đây,

102
00:08:01,750 --> 00:08:04,060
nếu món ăn tồn tại,

103
00:08:04,060 --> 00:08:06,555
sau đó chúng tôi sẽ xử lý các món ăn thích hợp.

104
00:08:06,555 --> 00:08:10,360
Nếu không, thì chúng tôi sẽ phải gửi thông báo lỗi.

105
00:08:10,360 --> 00:08:16,730
Vì vậy, để tôi sao chép phần này từ get và sau đó,

106
00:08:16,730 --> 00:08:20,710
chúng tôi sẽ thay thế điều này ở đây.

107
00:08:22,130 --> 00:08:25,155
Vì vậy, rõ ràng, nếu món ăn không tồn tại,

108
00:08:25,155 --> 00:08:27,165
sau đó chúng tôi sẽ trả lại lỗi này ở đây,

109
00:08:27,165 --> 00:08:31,035
nhưng nếu món ăn tồn tại, trong trường hợp đó,

110
00:08:31,035 --> 00:08:35,930
chúng tôi sẽ trả lại mã trạng thái 200 bộ tiêu đề.

111
00:08:35,930 --> 00:08:41,835
Nhưng trước khi chúng tôi vượt qua giá trị,

112
00:08:41,835 --> 00:08:50,400
những gì tôi sẽ làm là nói ý kiến món ăn,

113
00:08:50,400 --> 00:08:55,020
vì vậy chúng tôi đang đăng một bộ ý kiến mới cho món ăn.

114
00:08:55,130 --> 00:09:02,790
Vì vậy, chúng tôi sẽ nói ý kiến món ăn đẩy cơ thể req.

115
00:09:02,790 --> 00:09:07,785
Bởi vì nội dung của thông điệp chứa tất cả các ý kiến cần phải được đẩy ở đây,

116
00:09:07,785 --> 00:09:13,890
và sau đó, chúng tôi sẽ nói, “Tiết kiệm món ăn”.

117
00:09:13,890 --> 00:09:22,010
Và vì vậy nếu tiết kiệm trở lại thành công với món ăn ở đây,

118
00:09:22,010 --> 00:09:27,030
vì vậy chúng tôi sẽ gửi món ăn cập nhật từ đây.

119
00:09:32,350 --> 00:09:40,600
Vì vậy, phần này, nơi chúng tôi đang xây dựng mã trạng thái,

120
00:09:40,600 --> 00:09:49,750
chúng tôi sẽ làm điều đó bên trong ở đây và sau đó chúng tôi sẽ gửi lại các

121
00:09:54,320 --> 00:10:00,875
res.json và các món ăn mà chúng tôi thu được ở đây.

122
00:10:00,875 --> 00:10:04,885
Vì vậy, những gì chúng tôi đang làm là chúng tôi đang tiết kiệm món ăn ở đây.

123
00:10:04,885 --> 00:10:11,430
Chúng tôi lần đầu tiên đẩy các ý kiến vào món ăn ở đó,

124
00:10:11,430 --> 00:10:14,420
tập hợp các ý kiến mới vào món ăn ở đây,

125
00:10:14,420 --> 00:10:19,210
và sau đó chúng tôi đang lưu các món ăn cập nhật ở đây.

126
00:10:19,210 --> 00:10:20,825
Sau đó, sau khi lưu,

127
00:10:20,825 --> 00:10:29,070
chúng tôi sẽ trả lại món ăn cập nhật trở lại cho người dùng ở đây.

128
00:10:29,290 --> 00:10:32,125
Sau đó, nếu có một lỗi,

129
00:10:32,125 --> 00:10:37,370
sau đó chúng tôi sẽ xử lý các lỗi giống như chúng tôi đã làm ở đây.

130
00:10:38,570 --> 00:10:41,420
Nếu món ăn không tồn tại, tất nhiên,

131
00:10:41,420 --> 00:10:45,825
chúng ta sẽ trả lại lỗi nói rằng món ăn không tồn tại.

132
00:10:45,825 --> 00:10:47,475
Vì vậy, đây là cho bài đăng.

133
00:10:47,475 --> 00:10:49,100
Các hoạt động PUT, tất nhiên,

134
00:10:49,100 --> 00:10:51,680
không được hỗ trợ trên các món ăn.

135
00:10:51,680 --> 00:10:53,140
Vì vậy, trong trường hợp này,

136
00:10:53,140 --> 00:10:56,210
chúng tôi đang cố gắng thực hiện các hoạt động PUT

137
00:10:56,210 --> 00:11:06,550
trên các món ăn, req.params.Dishid/bình luận.

138
00:11:08,370 --> 00:11:10,980
Vì vậy, điều này là không được phép.

139
00:11:10,980 --> 00:11:13,415
Vì vậy, đó là những gì chúng tôi đang nói cho hoạt động PUT.

140
00:11:13,415 --> 00:11:15,545
Đối với thao tác xóa,

141
00:11:15,545 --> 00:11:19,130
những gì chúng tôi sẽ làm là đầu tiên tìm món ăn.

142
00:11:19,130 --> 00:11:22,275
Vì vậy, chúng ta sẽ nói món ăn. Findbyid.

143
00:11:22,275 --> 00:11:27,785
Vì vậy, xóa có nghĩa là chúng tôi đang loại bỏ tất cả các ý kiến từ món ăn,

144
00:11:27,785 --> 00:11:28,850
không phải là món ăn chính nó,

145
00:11:28,850 --> 00:11:31,540
nhưng chúng tôi đang loại bỏ tất cả các ý kiến từ món ăn.

146
00:11:31,540 --> 00:11:33,495
Vì vậy, trong trường hợp này,

147
00:11:33,495 --> 00:11:41,695
những gì chúng tôi sẽ kết thúc làm là như sau: vì vậy nếu món ăn không phải là null,

148
00:11:41,695 --> 00:11:47,345
nhớ lại rằng chúng ta cần phải xử lý nó bằng cách nói sau đó món ăn.

149
00:11:47,345 --> 00:11:49,400
Nếu món ăn không phải là null,

150
00:11:49,400 --> 00:11:53,080
sau đó chúng tôi sẽ loại bỏ tất cả các ý kiến từ món ăn.

151
00:11:53,080 --> 00:11:57,480
Vì vậy, tôi sẽ sao chép mã đó và sau đó dán nó vào đây,

152
00:11:57,480 --> 00:12:00,880
và sau đó chúng tôi sẽ chỉnh sửa mã này, sau đó xóa.

153
00:12:00,880 --> 00:12:06,070
Chúng ta sẽ thấy nếu món ăn không phải là null,

154
00:12:06,070 --> 00:12:10,085
sau đó họ sẽ trả lại món ăn ở đây.

155
00:12:10,085 --> 00:12:12,495
Vì vậy, nếu món ăn không phải là null,

156
00:12:12,495 --> 00:12:16,700
wat chúng tôi sẽ xử lý điều này là như sau.

157
00:12:16,700 --> 00:12:24,975
Vì vậy, chúng ta sẽ phải đi vào và xóa từng ý kiến.

158
00:12:24,975 --> 00:12:36,380
Vì vậy, chúng ta sẽ nói cho (var i =

159
00:12:36,380 --> 00:12:49,940
(dish.comments.length -1) i>= 0; i—).

160
00:12:49,940 --> 00:12:55,860
Vì vậy, chúng tôi đang theo nghĩa đen đi vào và loại bỏ mỗi bình luận.

161
00:12:55,860 --> 00:12:56,380
Vì vậy, chúng ta sẽ nói

162
00:12:56,380 --> 00:13:11,370
dish.comments.id (dish.comments [i]. _id).

163
00:13:11,370 --> 00:13:15,060
Chúng ta sẽ nói là bỏ đi.

164
00:13:15,060 --> 00:13:19,490
Vì vậy, chúng tôi sẽ được loại bỏ mỗi món ăn,

165
00:13:19,490 --> 00:13:22,520
một dưới mỗi ý kiến từng người một.

166
00:13:23,420 --> 00:13:26,910
Vì vậy, đây là những gì chúng tôi sẽ làm với các ý kiến.

167
00:13:26,910 --> 00:13:30,600
Sau đó, một khi chúng tôi đã loại bỏ tất cả các ý kiến cho món ăn,

168
00:13:30,600 --> 00:13:34,800
sau đó chúng tôi sẽ phải lưu các món ăn và sau đó gửi lại.

169
00:13:34,800 --> 00:13:38,345
Vì vậy, trước đó cũng khi chúng tôi sửa đổi các món ăn,

170
00:13:38,345 --> 00:13:39,760
đây là những gì chúng tôi đã làm ở đây.

171
00:13:39,760 --> 00:13:43,250
Vì vậy, tôi sẽ sao chép phần này,

172
00:13:43,610 --> 00:13:46,415
và sau đó đến đây,

173
00:13:46,415 --> 00:13:52,060
và sau đó nói dish.save, sau

174
00:13:52,060 --> 00:13:57,085
đó chúng tôi sẽ trả lại món ăn

175
00:13:57,085 --> 00:14:02,470
ở đây để chỉ ra các món ăn cập nhật được trả lại ở đây.

176
00:14:02,470 --> 00:14:05,130
Vì vậy, đây là cách chúng tôi sẽ xóa các nhận xét.

177
00:14:05,130 --> 00:14:07,225
Vì vậy, ở đây chúng ta đang đi vào,

178
00:14:07,225 --> 00:14:10,800
bây giờ không có cách dễ dàng để kéo ra

179
00:14:10,800 --> 00:14:15,330
tất cả các ý kiến từ mảng khi bạn có một tài liệu phụ.

180
00:14:15,330 --> 00:14:19,680
Vì vậy, bạn phải đi vào và xóa từng tài liệu phụ một.

181
00:14:19,680 --> 00:14:22,720
Vì vậy, đó là những gì tôi đang làm trong này cho vòng lặp ở đây.

182
00:14:22,720 --> 00:14:27,500
Vì vậy, tôi đang nói cho (var i = dish.comments.length).

183
00:14:27,500 --> 00:14:31,270
Vì vậy, tôi đang nhìn vào mảng ý kiến và sau đó bắt

184
00:14:31,270 --> 00:14:35,430
đầu từ nhận xét cuối cùng trong mảng đó tất cả các cách để nhận xét đầu tiên,

185
00:14:35,430 --> 00:14:38,940
tôi sẽ vào và sau đó xóa nhận xét bằng cách sử dụng

186
00:14:38,940 --> 00:14:42,905
các hoạt động gỡ bỏ trên tài liệu con.

187
00:14:42,905 --> 00:14:47,320
Vì vậy, cách chúng tôi sẽ truy cập một tài liệu con là bằng cách nói

188
00:14:47,320 --> 00:14:53,720
món ăn và sau đó nhận xét là tên trường và sau đó tôi nói id ở đây.

189
00:14:53,720 --> 00:14:56,259
Vì vậy, đây là cách bạn truy cập một tài liệu con,

190
00:14:56,259 --> 00:15:02,115
và bên trong đây bạn sẽ chỉ định id của các tài liệu con mà bạn đang cố gắng truy cập.

191
00:15:02,115 --> 00:15:06,310
Vì vậy, toàn bộ điều này sẽ cung cấp cho bạn quyền truy cập vào tài liệu con,

192
00:15:06,310 --> 00:15:09,670
và sau đó chúng tôi gọi phương pháp remove trên tài liệu con,

193
00:15:09,670 --> 00:15:14,320
và do đó tài liệu con sẽ được gỡ bỏ khỏi mảng các tài liệu con.

194
00:15:14,320 --> 00:15:17,980
Sau đó, sau khi chúng tôi đã xóa tất cả các nhận xét,

195
00:15:17,980 --> 00:15:21,075
tôi sẽ lưu các thay đổi và đó là nó.

196
00:15:21,075 --> 00:15:25,840
Vì vậy, tất cả các ý kiến của tôi sẽ bị xóa khỏi món ăn sau đó.

197
00:15:25,840 --> 00:15:33,335
Bây giờ, chúng ta sẽ đối phó với điểm kết thúc tiếp theo đó là Dishidcomments/:CommentID.

198
00:15:33,335 --> 00:15:35,460
Vì vậy, trong trường hợp này,

199
00:15:35,460 --> 00:15:42,410
chúng tôi sẽ bắt đầu bằng cách đầu tiên định vị món ăn và sau đó sau khi chúng tôi xác định vị trí món ăn,

200
00:15:42,410 --> 00:15:47,460
sau đó chúng tôi phải đảm bảo rằng món ăn tồn tại,

201
00:15:47,460 --> 00:15:49,310
và sau đó đối phó với món ăn.

202
00:15:49,310 --> 00:15:52,320
Vì vậy, tôi sẽ xóa phần này,

203
00:15:52,320 --> 00:15:59,350
và sau đó chúng ta sẽ nói chúng ta hãy sao chép phần này từ git mà chúng ta đã có trước đó

204
00:16:09,140 --> 00:16:13,650
bởi vì chúng ta cần phải có khả năng đối phó với tình

205
00:16:13,650 --> 00:16:20,095
huống mà một trong hai món ăn không tồn tại hoặc món ăn tồn tại nhưng ý kiến không tồn tại,

206
00:16:20,095 --> 00:16:23,870
hoặc món ăn tự nó không tồn tại.

207
00:16:23,870 --> 00:16:28,280
Vì vậy, có ba điều kiện mà tôi cần phải kiểm tra.

208
00:16:28,280 --> 00:16:32,650
Vì vậy, chúng ta sẽ nói nếu (món ăn! =

209
00:16:32,650 --> 00:16:51,180
null && dish.comments.id (Req.params.Commentid)! =

210
00:16:51,180 --> 00:17:00,545
null, do đó có nghĩa là món ăn chính nó tồn tại và cũng có ý kiến tồn tại trong món ăn,

211
00:17:00,545 --> 00:17:05,560
chỉ sau đó chúng tôi có thể gửi lại một bình luận cụ thể đã được yêu cầu.

212
00:17:05,560 --> 00:17:07,680
Vì vậy, trong trường hợp đó,

213
00:17:07,680 --> 00:17:14,525
chúng ta sẽ nói StatusCode là 200, SeTheader ứng dụng json,

214
00:17:14,525 --> 00:17:19,895
và sau đó ở đây chúng tôi sẽ gửi lại dish.comments,

215
00:17:19,895 --> 00:17:25,300
và chúng tôi đang gửi lại nhận xét đặc biệt này.

216
00:17:25,300 --> 00:17:29,350
Vì vậy, đó là bình luận cụ thể mà chúng tôi đang gửi max.

217
00:17:29,350 --> 00:17:37,925
Vì vậy, điều này sẽ cho phép chúng tôi lấy một bình luận cụ thể từ tập hợp các ý kiến.

218
00:17:37,925 --> 00:17:46,895
Bây giờ, chúng ta sẽ nói khác nếu món ăn bằng null.

219
00:17:46,895 --> 00:17:49,180
Vì vậy, các món ăn null,

220
00:17:49,180 --> 00:17:55,830
sau đó tất nhiên chúng ta sẽ phải chỉ ra rằng món ăn không tồn tại và

221
00:17:55,830 --> 00:18:02,105
điều kiện cuối cùng là nếu bình luận chính nó là null.

222
00:18:02,105 --> 00:18:08,360
Vì vậy, trong trường hợp đó cũng tôi phải chỉ ra rằng bình luận chính nó không tồn tại,

223
00:18:08,360 --> 00:18:13,130
rằng ID bình luận cụ thể không tồn tại vì vậy trong trường hợp đó,

224
00:18:13,130 --> 00:18:15,355
tôi sẽ nói

225
00:18:15,355 --> 00:18:23,930
bình luận lỗi mới req.params.CommentID không tìm thấy.

226
00:18:23,930 --> 00:18:25,520
Vậy, ba điều kiện.

227
00:18:25,520 --> 00:18:31,045
Đầu tiên, bạn phải chắc chắn rằng món ăn tồn tại và các ý kiến món ăn tồn tại,

228
00:18:31,045 --> 00:18:34,285
nếu họ làm sau đó tôi có thể gửi lại bình luận cụ thể,

229
00:18:34,285 --> 00:18:41,505
nếu không, nếu món ăn tự nó không tồn tại ở phía máy chủ trong cơ sở dữ liệu,

230
00:18:41,505 --> 00:18:44,340
sau đó tôi sẽ chỉ ra rằng món ăn không tồn tại nhưng nếu

231
00:18:44,340 --> 00:18:47,300
món ăn nhưng nhận xét không tồn tại,

232
00:18:47,300 --> 00:18:50,870
sau đó tôi sẽ gửi lại thông điệp nói rằng nhận xét không tồn tại.

233
00:18:50,870 --> 00:18:55,495
Vì vậy, lưu ý rằng họ phải xử lý tất cả các điều kiện có thể ở đây cho GET.

234
00:18:55,495 --> 00:18:57,500
Đối với POST tất nhiên,

235
00:18:57,500 --> 00:19:01,895
hoạt động bài không được hỗ trợ trên điểm cuối này,

236
00:19:01,895 --> 00:19:04,060
vì vậy chúng tôi sẽ nói

237
00:19:08,900 --> 00:19:18,100
ý kiến slash req.params.Commentid.

238
00:19:18,950 --> 00:19:26,205
Vì vậy, các hoạt động POST không được hỗ trợ trên nhận xét này Id. Bây giờ còn PUT thì sao?

239
00:19:26,205 --> 00:19:31,360
PUT là một trường hợp thú vị hơn ở đây.

240
00:19:31,360 --> 00:19:33,550
Vì vậy, một lần nữa ngay cả đối với đặt,

241
00:19:33,550 --> 00:19:40,205
tôi phải xử lý tất cả các điều kiện có thể, vì

242
00:19:40,205 --> 00:19:49,150
vậy tôi sẽ nhìn vào điều này và nói, okay cho điều này,

243
00:19:49,370 --> 00:19:55,045
hãy để tôi sao chép toàn bộ mã này bởi vì chúng ta phải xử lý

244
00:19:55,045 --> 00:20:03,260
tất cả các khả năng này và sau đó tôi sẽ cho bạn biết chính xác làm thế nào chúng tôi xử lý trường hợp PUT ở đây.

245
00:20:03,260 --> 00:20:06,685
Vì vậy, trong trường hợp PUT,

246
00:20:06,685 --> 00:20:10,140
trước hết chúng ta cần phải xác định vị trí cuộc tàn sát.

247
00:20:10,140 --> 00:20:13,600
Vì vậy, họ sẽ nói món ăn tìm thấy bởi Id req param Id,

248
00:20:13,600 --> 00:20:20,845
sau đó nếu món ăn tồn tại và bình luận chính nó tồn tại,

249
00:20:20,845 --> 00:20:23,080
sau đó tôi biết rằng tôi có thể cập nhật bình luận.

250
00:20:23,080 --> 00:20:28,660
Nếu không, hai điều kiện này rõ ràng phải được chăm sóc,

251
00:20:28,660 --> 00:20:32,740
nhận xét đó không tồn tại hoặc món ăn không tồn tại.

252
00:20:32,740 --> 00:20:35,350
Hai người này đã được xử lý bởi vụ án đó.

253
00:20:35,350 --> 00:20:38,190
Bây giờ, đây là tình huống đặc biệt mà chúng ta có.

254
00:20:38,190 --> 00:20:45,355
Vì vậy, nếu món ăn tồn tại và nhận xét cụ thể mà tôi đang tìm kiếm cũng tồn tại,

255
00:20:45,355 --> 00:20:50,300
thì những gì tôi biết là trong nội dung của thông điệp,

256
00:20:50,300 --> 00:20:53,760
bản cập nhật cho nhận xét được chỉ định.

257
00:20:53,760 --> 00:20:55,625
Vì vậy, tôi cần phải cập nhật điều đó.

258
00:20:55,625 --> 00:21:00,760
Vì vậy, một nơi nào đó ở đây

259
00:21:00,760 --> 00:21:02,910
tôi làm sửa đổi,

260
00:21:02,910 --> 00:21:10,110
tôi làm một món ăn lưu ở đây, vì vậy tôi sẽ đi vào và sao chép một chút mã này từ đây,

261
00:21:10,960 --> 00:21:17,680
tất nhiên đây không phải là điều đúng nhưng tôi chỉ cần một phần của mã từ đó,

262
00:21:17,680 --> 00:21:19,940
vì vậy tôi sẽ đi vào PUT.

263
00:21:19,940 --> 00:21:23,270
Để tôi dán nó vào vị trí ở đây và

264
00:21:23,270 --> 00:21:27,340
sau đó tôi sẽ cho bạn biết chính xác làm thế nào họ sẽ xử lý điều này.

265
00:21:27,700 --> 00:21:31,200
Bởi vì tôi cần món ăn tiết kiệm một phần.

266
00:21:31,200 --> 00:21:35,950
Vì vậy, làm thế nào để chúng tôi xử lý bản cập nhật cho một nhận xét cụ thể?

267
00:21:35,950 --> 00:21:39,510
Vì vậy, để cập nhật cho một bình luận cụ thể,

268
00:21:39,510 --> 00:21:45,265
những gì chúng ta biết là bình luận này cần phải được cập nhật,

269
00:21:45,265 --> 00:21:49,900
vì vậy chúng ta biết rằng món ăn tồn tại và bình luận chính nó tồn tại.

270
00:21:49,900 --> 00:21:53,885
Tôi muốn cập nhật các lĩnh vực hiện tại.

271
00:21:53,885 --> 00:21:56,690
Bây giờ, nếu một bình luận đã tồn tại thì tôi không

272
00:21:56,690 --> 00:21:59,530
muốn cho phép người dùng thay đổi tác giả của bình luận,

273
00:21:59,530 --> 00:22:00,890
tác giả nên giữ lại.

274
00:22:00,890 --> 00:22:09,090
Hai trường duy nhất mà tôi sẽ cho phép cập nhật người dùng là đánh giá.

275
00:22:09,090 --> 00:22:12,380
Vì vậy, trong nội dung của thông điệp PUT đến,

276
00:22:12,380 --> 00:22:15,089
tôi có thể bao gồm

277
00:22:15,089 --> 00:22:17,680
đánh giá cập nhật

278
00:22:21,830 --> 00:22:28,110
hoặc nhận xét cập nhật.

279
00:22:28,110 --> 00:22:33,475
Đây là hai điều duy nhất mà tôi sẽ cho phép người dùng thay đổi.

280
00:22:33,475 --> 00:22:40,190
Vì vậy, nếu các tài sản đánh giá là cơ thể gián tiếp để gọi rằng cơ thể

281
00:22:40,190 --> 00:22:47,940
sẽ chứa các cập nhật mà chúng tôi đang cố gắng để làm như vậy trong trường hợp này chúng tôi sẽ nói món ăn.

282
00:22:48,240 --> 00:22:51,460
Vì vậy, chúng tôi sẽ nói ý kiến món ăn,

283
00:22:51,460 --> 00:22:54,000
vì vậy hãy để tôi chỉ sao chép phần này.

284
00:22:54,000 --> 00:22:56,980
Dish bình luận bình luận Id.

285
00:22:56,980 --> 00:23:02,770
Bây giờ đây là một cách đơn giản để xử lý vấn đề này ở đây.

286
00:23:05,950 --> 00:23:11,525
Bởi vì không có cách cụ thể để cập nhật

287
00:23:11,525 --> 00:23:16,655
một nhận xét cụ thể mà là trong một tài liệu phụ,

288
00:23:16,655 --> 00:23:19,330
không có phương pháp cụ thể để thực hiện việc này.

289
00:23:19,330 --> 00:23:24,950
Vì vậy, đây là workaround mà tôi thấy rằng dường như làm việc cho chúng tôi,

290
00:23:24,950 --> 00:23:32,820
vì vậy chúng tôi sẽ nói món ăn ý kiến req tham số bình luận Id đánh giá bằng req body.rating.

291
00:23:34,700 --> 00:23:37,640
Vì vậy, tôi sẽ cập nhật đánh giá.

292
00:23:37,640 --> 00:23:42,420
Tương tự như vậy, nếu bình luận tồn tại ở đó,

293
00:23:42,420 --> 00:23:51,995
sau đó tôi sẽ nói req bình luận Id bình luận req bình luận cơ thể.

294
00:23:51,995 --> 00:23:57,655
Vì vậy, đó là cách tôi sẽ được cập nhật đánh giá và nhận xét,

295
00:23:57,655 --> 00:24:00,230
và tôi đã từng nói về cập nhật đánh giá và nhận xét,

296
00:24:00,230 --> 00:24:02,155
và họ sẽ lưu các món ăn,

297
00:24:02,155 --> 00:24:08,140
và sau đó một khi tôi lưu các món ăn sau đó tôi sẽ gửi lại trả lời.

298
00:24:08,140 --> 00:24:15,120
Vì vậy, lưu ý rằng đây là cách duy nhất mà tôi tìm thấy đó là dễ dàng, đủ

299
00:24:15,120 --> 00:24:22,785
để cập nhật một tài liệu phụ nhúng bên trong một tài liệu của Mongoose.

300
00:24:22,785 --> 00:24:28,520
Không có cách rõ ràng mà Mongoose hỗ trợ cho việc cập nhật một tài liệu nhúng.

301
00:24:28,520 --> 00:24:34,275
Vì vậy, đây là cách giải quyết mà tôi tìm thấy cho phép chúng tôi thực hiện thao tác này.

302
00:24:34,275 --> 00:24:38,825
Bây giờ cho hoạt động xóa.

303
00:24:38,825 --> 00:24:43,940
Đối với các hoạt động xóa chúng tôi đang xóa chỉ một cụ thể-

304
00:24:43,940 --> 00:24:48,880
Bình luận, vì vậy tôi sẽ lấy thông tin này từ

305
00:24:48,880 --> 00:24:53,915
deleter cho tất cả các ý kiến

306
00:24:53,915 --> 00:24:55,880
và thay vì xóa tất cả các ý kiến

307
00:24:55,880 --> 00:24:58,190
tôi sẽ chỉ được xóa một bình luận cụ thể.

308
00:24:58,190 --> 00:25:03,095
Vì vậy, để tôi sao chép lại từ việc xóa.

309
00:25:03,095 --> 00:25:07,920
Để tôi dán nó vào đây và sau đó chúng tôi sẽ cập nhật điều này.

310
00:25:07,920 --> 00:25:13,910
Vì vậy, nếu tôi xóa một bình luận cụ thể, vì vậy tôi sẽ tìm thấy các món ăn đầu tiên.

311
00:25:13,910 --> 00:25:17,240
Nếu món ăn không phải là null,

312
00:25:17,240 --> 00:25:21,480
nhớ lại rằng trong tình huống này tôi phải xử lý cả hai món ăn

313
00:25:21,480 --> 00:25:26,395
không phải là null và cũng là bình luận không phải là null.

314
00:25:26,395 --> 00:25:29,150
Vì vậy, tôi sẽ nói nếu

315
00:25:32,890 --> 00:25:39,840
món ăn không bằng null và món ăn ý kiến id tham số không bằng null,

316
00:25:39,840 --> 00:25:44,335
sau đó tôi biết rằng tôi có một bình luận cụ thể mà tôi muốn xóa.

317
00:25:44,335 --> 00:25:45,850
Tôi không xóa tất cả các ý kiến,

318
00:25:45,850 --> 00:25:49,770
tôi chỉ xóa một bình luận cụ thể ở đây.

319
00:25:49,770 --> 00:25:58,700
Vì vậy, tôi sẽ nói ý kiến món ăn id và sau đó tôi xóa bình luận cụ thể ở đây đó

320
00:25:58,700 --> 00:26:07,780
là req.params.Commentid và loại bỏ

321
00:26:07,780 --> 00:26:14,565
rằng bình luận cụ thể và sau đó tôi sẽ lưu các món ăn cập nhật và sau đó chuyển sang với điều đó.

322
00:26:14,565 --> 00:26:19,225
Bây giờ, phần khác tôi cần phải xử lý cả hai tình huống.

323
00:26:19,225 --> 00:26:23,180
Vì vậy, để tôi sao chép phần này khác nếu món ăn không bằng null và

324
00:26:23,180 --> 00:26:28,420
như vậy và sau đó thay thế này ở đây.

325
00:26:28,420 --> 00:26:33,480
Vì vậy, nếu món ăn là null sau đó tôi sẽ gửi lại lỗi nói rằng món ăn không tồn tại.

326
00:26:33,480 --> 00:26:37,640
Nếu nhận xét là null sau đó tôi sẽ gửi lại lỗi nói bình luận không tồn tại.

327
00:26:37,640 --> 00:26:39,520
Vì vậy, đó là nó,

328
00:26:39,520 --> 00:26:41,770
đây là bản cập nhật mà tôi đang làm ở đây.

329
00:26:41,770 --> 00:26:44,395
Để xóa một bình luận cụ thể,

330
00:26:44,395 --> 00:26:47,670
trước tiên tôi sẽ đảm bảo rằng các món ăn và bình luận

331
00:26:47,670 --> 00:26:52,040
tồn tại sau đó tôi sẽ xóa các bình luận cụ thể và sau đó tôi sẽ lưu

332
00:26:52,040 --> 00:26:54,520
các thay đổi cho các món ăn và sau đó

333
00:26:54,520 --> 00:27:00,315
tiếp tục xử lý phần còn lại của các trường hợp, đó là nó.

334
00:27:00,315 --> 00:27:05,310
Hãy lưu các thay đổi và sau đó xem cách thức hoạt động.

335
00:27:05,310 --> 00:27:07,210
Đi đến thiết bị đầu cuối,

336
00:27:07,210 --> 00:27:12,150
tôi thấy máy chủ MongoDB không lên và chạy vì vậy chúng ta hãy bắt đầu ở đó.

337
00:27:12,150 --> 00:27:14,000
Hãy chắc chắn

338
00:27:14,000 --> 00:27:16,075
rằng, tất nhiên, máy chủ MongoDB đang hoạt động và chạy, chúng ta

339
00:27:16,075 --> 00:27:19,070
cũng hãy bắt đầu máy chủ nhanh của chúng tôi.

340
00:27:19,890 --> 00:27:23,165
Một khi máy chủ nhanh của bạn được lên và chạy,

341
00:27:23,165 --> 00:27:27,185
những gì chúng tôi sẽ làm là bây giờ chúng tôi đang xem xét cụ thể tại

342
00:27:27,185 --> 00:27:32,420
các ý kiến và sau đó thực hiện các hoạt động trên các ý kiến.

343
00:27:32,420 --> 00:27:36,320
Vì vậy, chúng ta hãy đi đến Postman và

344
00:27:36,320 --> 00:27:44,540
sau đó kiểm tra những gì chúng tôi có trong cơ sở dữ liệu và sau đó cố gắng sửa đổi các ý kiến.

345
00:27:44,540 --> 00:27:47,760
Vì vậy, ở đây tôi đang ở Postman,

346
00:27:47,760 --> 00:27:53,265
vì vậy hãy để tôi lấy các món ăn và bây giờ tôi thấy rằng các món ăn đều trống rỗng.

347
00:27:53,265 --> 00:28:02,385
Vì vậy, để tôi đăng một món ăn để liệt kê các món ăn để tôi đăng một món ăn.

348
00:28:02,385 --> 00:28:04,860
Nhớ lại rằng chúng tôi có món ăn này của cô,

349
00:28:04,860 --> 00:28:11,540
vì vậy trong Postman của tôi, tôi đã làm điều đó cho bài tập trước đó.

350
00:28:11,540 --> 00:28:16,160
Tôi sẽ chỉ chọn nó và sau đó đăng món ăn đó và sau đó bạn

351
00:28:16,160 --> 00:28:21,205
thấy rằng món ăn đặc biệt đó đã được đăng ở đây, dưới đây đây.

352
00:28:21,205 --> 00:28:25,060
Bạn có thể thấy rằng món ăn đã được tạo ra ngay tại đó.

353
00:28:25,060 --> 00:28:33,970
Bây giờ hãy để tôi sao chép món ăn đặc biệt đó và sau đó tôi sẽ

354
00:28:33,970 --> 00:28:45,505
lấy món ăn đó ở đây.

355
00:28:45,505 --> 00:28:49,920
Vì vậy, bạn thấy rằng món ăn đặc biệt tồn tại ở đây.

356
00:28:49,920 --> 00:28:52,575
Trước tiên, chúng ta hãy nhận được tất cả các ý kiến.

357
00:28:52,575 --> 00:28:55,480
Vì vậy, nếu tôi làm một get trên các ý kiến bạn nhận thấy rằng

358
00:28:55,480 --> 00:28:58,370
tất cả các ý kiến cho rằng món ăn đặc biệt đã được trả lại.

359
00:28:58,370 --> 00:29:02,195
Chúng tôi có thể làm bài đăng và xóa cũng.

360
00:29:02,195 --> 00:29:05,865
Hãy đưa vào đó và rõ ràng là bạn không thể đặt trên

361
00:29:05,865 --> 00:29:09,960
lưng để bạn nhận thấy rằng thao tác đặt không hoạt động trên đó.

362
00:29:09,960 --> 00:29:13,110
Hãy đăng một bình luận mới.

363
00:29:13,110 --> 00:29:18,070
Vì vậy, để đăng một bình luận mới, chúng tôi sẽ đi vào cơ thể,

364
00:29:18,380 --> 00:29:28,990
và sau đó cho phép tôi cắt ra tất cả những điều này và sau đó chúng tôi sẽ chỉnh sửa một trong những

365
00:29:28,990 --> 00:29:31,130
ý kiến và sau đó

366
00:29:35,790 --> 00:29:40,045
cố gắng đăng nhận xét đó.

367
00:29:40,045 --> 00:29:45,130
Vì vậy, chúng tôi sẽ nói đánh giá ba và sau đó chúng tôi sẽ

368
00:29:45,130 --> 00:29:56,110
nói bình luận thử nghiệm, người dùng thử nghiệm.

369
00:29:56,110 --> 00:29:58,425
Hãy đăng bình luận này.

370
00:29:58,425 --> 00:30:00,190
Khi bạn đăng bình luận này,

371
00:30:00,190 --> 00:30:05,920
bạn thấy rằng các món ăn cập nhật đã được trả lại ở đây và bạn thấy rằng trong

372
00:30:05,920 --> 00:30:14,530
món ăn này bạn thấy rằng bình luận mới đã được bao gồm trong đó.

373
00:30:14,530 --> 00:30:20,335
Vì vậy, hãy sao chép toàn bộ điều này.

374
00:30:20,335 --> 00:30:27,515
Bây giờ, chúng tôi sẽ cố gắng để có được nhận xét cụ thể mà chúng tôi vừa chèn.

375
00:30:27,515 --> 00:30:31,440
Đối với nhận xét cụ thể đó, đây là id của nhận xét đó.

376
00:30:31,440 --> 00:30:35,180
Vì vậy, hãy để tôi sao chép id cho nhận xét cụ thể đó.

377
00:30:35,180 --> 00:30:38,545
Quay trở lại Postman,

378
00:30:38,545 --> 00:30:43,915
hãy để tôi cố gắng lấy nhận xét cụ thể đó bằng cách thực hiện một thao tác get.

379
00:30:43,915 --> 00:30:48,380
Ở đó bạn thấy rằng nhận xét cụ thể đó đã được truy xuất ở đây.

380
00:30:48,380 --> 00:30:52,050
Bây giờ, nếu bạn đang cố gắng để làm một bài đăng trên đó, mà sẽ không làm việc

381
00:30:52,050 --> 00:30:56,445
như vậy rõ ràng bạn thấy rằng các hoạt động bài không được phép trên đó.

382
00:30:56,445 --> 00:31:01,370
Hãy thực hiện một hoạt động put,

383
00:31:03,860 --> 00:31:06,385
trên nhận xét cụ thể đó.

384
00:31:06,385 --> 00:31:10,010
Vì vậy, nếu tôi đã đưa hoạt động trong cơ thể,

385
00:31:10,390 --> 00:31:18,285
tôi sẽ nói bình luận kiểm tra cập nhật.

386
00:31:18,285 --> 00:31:23,200
Vì vậy, tôi sẽ cập nhật các lĩnh vực bình luận của nhận xét đó.

387
00:31:23,200 --> 00:31:28,745
Nếu bạn đang nói để đưa vào đó bạn sẽ thấy rằng cho nhận xét cụ thể, nhận xét

388
00:31:28,745 --> 00:31:33,670
bây giờ đã được cập nhật để phản ánh nhận xét thử nghiệm được cập nhật.

389
00:31:33,670 --> 00:31:39,515
Vì vậy, bạn thấy rằng thao tác đặt trên trường nhận xét cũng hoạt động chính xác.

390
00:31:39,515 --> 00:31:42,820
Hãy xóa nhận xét đó,

391
00:31:42,820 --> 00:31:46,660
vì vậy tôi có thể xóa nhận xét và sau đó khi tôi xóa nhận xét, bạn sẽ

392
00:31:46,660 --> 00:31:50,475
thấy nhận xét đó đã biến mất khỏi danh sách nhận xét.

393
00:31:50,475 --> 00:31:53,915
Vì vậy, bạn thấy rằng thao tác xóa cũng hoạt động.

394
00:31:53,915 --> 00:31:55,970
Hãy xóa tất cả các nhận xét.

395
00:31:55,970 --> 00:32:00,595
Vì vậy, tôi sẽ đi vào và xóa tất cả các ý kiến.

396
00:32:00,595 --> 00:32:04,650
Sau đó, bạn thấy rằng tất cả các nhận xét đã bị xóa,

397
00:32:04,650 --> 00:32:09,380
và vì vậy bạn thấy rằng khu vực nhận xét bây giờ trống.

398
00:32:09,380 --> 00:32:13,050
Vì vậy, bây giờ bạn có thể nhìn thấy chúng tất cả các get, put, post,

399
00:32:13,050 --> 00:32:14,905
và xóa các hoạt động trên

400
00:32:14,905 --> 00:32:21,064
các món dịch/Dishid/bình luận

401
00:32:21,064 --> 00:32:25,455
và các món dịch/Dishid/bình luận/bình luận, R

402
00:32:25,455 --> 00:32:29,710
EST API điểm cuối tất cả các công việc như mong đợi.

403
00:32:29,710 --> 00:32:32,670
Vì vậy, với điều này, chúng tôi hoàn thành bài tập này.

404
00:32:32,670 --> 00:32:38,365
Vì vậy, trong bài tập này, chúng tôi đã hoàn thành việc thực hiện các món ăn gạch chéo,

405
00:32:38,365 --> 00:32:42,395
REST API điểm cuối và hỗ trợ tất cả các cách lên để

406
00:32:42,395 --> 00:32:47,070
cho phép chúng tôi thao tác một món ăn duy nhất,

407
00:32:47,070 --> 00:32:48,730
bộ sưu tập các món ăn,

408
00:32:48,730 --> 00:32:52,165
một bình luận duy nhất và cũng là bộ sưu tập các ý kiến.

409
00:32:52,165 --> 00:32:56,930
Đây là thời điểm tốt để bạn thực hiện một cam kết git với thông điệp,

410
00:32:56,930 --> 00:33:02,600
express, REST API với Mongoose phần hai.