﻿1
00:00:00,980 --> 00:00:02,760
‫Instruktur: Baiklah, dalam kuliah

2
00:00:02,760 --> 00:00:04,720
‫ini, kita akan berbicara tentang

3
00:00:04,720 --> 00:00:06,910
‫sesuatu yang disebut rute bersarang, apa

4
00:00:06,910 --> 00:00:08,690
‫itu, mengapa kita membutuhkannya,

5
00:00:08,690 --> 00:00:11,163
‫dan bagaimana kita bisa mengimplementasikannya di Express.

6
00:00:12,944 --> 00:00:15,470
‫Mari kita berpikir sejenak bagaimana

7
00:00:15,470 --> 00:00:18,566
‫dalam prakteknya, kita sebenarnya ingin membuat review baru.

8
00:00:18,566 --> 00:00:21,520
‫Sampai saat ini, saat membuat ulasan baru,

9
00:00:21,520 --> 00:00:24,020
‫kami selalu secara manual meneruskan

10
00:00:24,020 --> 00:00:26,920
‫ID tur dan ID pengguna ke badan

11
00:00:26,920 --> 00:00:30,300
‫permintaan, dan kemudian membuat ulasan dari sana, kan.

12
00:00:30,300 --> 00:00:33,180
‫Tidak apa-apa selama pengembangan, tetapi tentu saja, bukan

13
00:00:33,180 --> 00:00:34,980
‫seperti itu ulasan yang akan

14
00:00:34,980 --> 00:00:36,433
‫dibuat di dunia nyata.

15
00:00:37,680 --> 00:00:40,610
‫Jadi, di dunia nyata, ID pengguna

16
00:00:40,610 --> 00:00:44,010
‫idealnya berasal dari pengguna yang saat ini masuk

17
00:00:44,010 --> 00:00:47,740
‫dan ID tur harus berasal dari tur saat ini.

18
00:00:47,740 --> 00:00:49,700
‫Itu idealnya harus dikodekan

19
00:00:49,700 --> 00:00:51,877
‫tepat di rute, jadi di URL.

20
00:00:53,020 --> 00:00:56,300
‫Saat mengirimkan permintaan posting untuk tinjauan

21
00:00:56,300 --> 00:01:00,140
‫baru, kami ingin mengirimkannya ke URL seperti ini.

22
00:01:00,140 --> 00:01:03,143
‫Mari kita tulis di sini sebagai komentar.

23
00:01:05,826 --> 00:01:08,869
‫Idealnya, kami ingin melakukan

24
00:01:08,869 --> 00:01:13,869
‫permintaan posting, tur, dan ID tur, tidak terlalu

25
00:01:15,490 --> 00:01:19,343
‫penting di sini, dan kemudian ulasan.

26
00:01:20,650 --> 00:01:23,100
‫Oke, jadi sekarang, seperti ini, kami memiliki

27
00:01:23,100 --> 00:01:25,580
‫ID tur tepat di URL dan ID

28
00:01:25,580 --> 00:01:28,030
‫pengguna juga akan berasal dari pengguna

29
00:01:28,030 --> 00:01:29,913
‫yang saat ini masuk.

30
00:01:31,130 --> 00:01:35,330
‫Apa yang kita lihat di sini sekarang disebut rute bersarang.

31
00:01:35,330 --> 00:01:37,330
‫Mereka sangat masuk akal

32
00:01:37,330 --> 00:01:40,570
‫ketika ada hubungan orangtua-anak yang jelas antara sumber daya.

33
00:01:40,570 --> 00:01:43,840
‫Itu jelas terjadi di sini, kan.

34
00:01:43,840 --> 00:01:47,530
‫Ulasan jelas merupakan anak dari tur.

35
00:01:47,530 --> 00:01:49,320
‫Rute bersarang ini

36
00:01:49,320 --> 00:01:51,580
‫pada dasarnya berarti mengakses

37
00:01:51,580 --> 00:01:54,810
‫sumber ulasan di sumber daya tur, oke.

38
00:01:54,810 --> 00:01:57,420
‫Dengan cara yang sama, kita sebenarnya

39
00:01:57,420 --> 00:02:01,193
‫juga ingin mengakses ulasan dari tur tertentu dengan cara yang sama.

40
00:02:02,310 --> 00:02:05,560
‫Katakanlah kemudian dapatkan permintaan, dan lagi

41
00:02:05,560 --> 00:02:09,650
‫untuk tur slash tour ID dan ulasan slash.

42
00:02:09,650 --> 00:02:11,390
‫Idealnya, ini akan memberi

43
00:02:11,390 --> 00:02:13,583
‫kami semua ulasan untuk tur ini.

44
00:02:14,970 --> 00:02:17,110
‫Kami dapat melangkah lebih

45
00:02:17,110 --> 00:02:19,653
‫jauh dan juga menentukan ID ulasan.

46
00:02:21,840 --> 00:02:24,490
‫Jadi sekali lagi, hanya string acak di sini, tetapi

47
00:02:24,490 --> 00:02:25,703
‫Anda mengerti maksudnya.

48
00:02:26,643 --> 00:02:28,550
‫Dalam hal ini, kami akan mendapatkan

49
00:02:28,550 --> 00:02:30,420
‫ulasan dengan ID ini

50
00:02:30,420 --> 00:02:32,603
‫di sini di tur dengan ID ini.

51
00:02:34,140 --> 00:02:36,520
‫Inilah yang dimaksud dengan rute bersarang.

52
00:02:36,520 --> 00:02:40,220
‫Ini adalah cara yang lebih mudah untuk

53
00:02:40,220 --> 00:02:44,795
‫membaca dan memahami cara kerja API bagi pengguna API kami.

54
00:02:44,795 --> 00:02:47,130
‫Ini jauh lebih mudah daripada bermain-main

55
00:02:47,130 --> 00:02:50,100
‫dengan string kueri dan semua hal seperti itu.

56
00:02:50,100 --> 00:02:52,580
‫Juga, ini benar-benar menunjukkan bagaimana

57
00:02:52,580 --> 00:02:55,850
‫ada hubungan yang jelas antara sumber daya

58
00:02:55,850 --> 00:02:58,610
‫ini, sekali lagi, ulasan dan tur.

59
00:02:58,610 --> 00:03:00,410
‫Baiklah, tapi cukup bicara.

60
00:03:00,410 --> 00:03:02,510
‫Sekarang mari kita benar-benar menerapkan ini

61
00:03:02,510 --> 00:03:04,600
‫dimulai dengan rute pos.

62
00:03:04,600 --> 00:03:08,100
‫Sekarang, karena rute sebenarnya dimulai dengan tur, tentu saja

63
00:03:08,100 --> 00:03:11,150
‫akan dialihkan ke router tur kami.

64
00:03:11,150 --> 00:03:14,600
‫Kita harus mengimplementasikan fungsionalitas ini setidaknya untuk saat

65
00:03:14,600 --> 00:03:16,890
‫ini, di router tur, meskipun

66
00:03:16,890 --> 00:03:19,530
‫itu tampaknya agak kontra-intuitif karena kita

67
00:03:19,530 --> 00:03:21,793
‫sebenarnya berurusan dengan ulasan.

68
00:03:23,190 --> 00:03:26,650
‫Tapi sekali lagi, untuk saat ini, mari kita terapkan seperti ini.

69
00:03:26,650 --> 00:03:29,690
‫Kami datang ke router pengguna kami dan pertama,

70
00:03:32,040 --> 00:03:33,550
‫karena kami benar-benar akan

71
00:03:33,550 --> 00:03:34,870
‫menggunakan ulasan

72
00:03:34,870 --> 00:03:37,483
‫di sini, kami perlu mengimpor pengontrol ulasan.

73
00:03:42,370 --> 00:03:46,140
‫Kontroler membutuhkan.

74
00:03:46,140 --> 00:03:49,763
‫Mungkin saya seharusnya menyalin baris dari sebelumnya.

75
00:03:52,080 --> 00:03:55,693
‫Controller, dan review controller.

76
00:03:57,380 --> 00:04:01,010
‫Baiklah, sekarang di bagian paling bawah, dan mari kita

77
00:04:01,010 --> 00:04:02,730
‫ambil kode kita untuk

78
00:04:02,730 --> 00:04:04,970
‫contoh ini dari sini hanya

79
00:04:08,100 --> 00:04:09,223
‫sebagai referensi.

80
00:04:13,518 --> 00:04:15,750
‫Sehingga kita sekarang bisa benar-benar menerapkannya.

81
00:04:15,750 --> 00:04:18,910
‫Rute yang akan kita terapkan

82
00:04:20,960 --> 00:04:24,673
‫di sini adalah slash ID dan review.

83
00:04:26,240 --> 00:04:28,600
‫Bagian tur ini, seperti yang sudah Anda ketahui,

84
00:04:28,600 --> 00:04:30,457
‫adalah tempat kami memasang router ini

85
00:04:30,457 --> 00:04:33,300
‫dan oleh karena itu, kami tidak perlu mengulanginya di sini.

86
00:04:33,300 --> 00:04:37,090
‫Tapi kemudian, kami memiliki ID tur dan ulasan miring.

87
00:04:37,090 --> 00:04:38,590
‫Untuk memperjelas hal ini, sebut

88
00:04:38,590 --> 00:04:40,440
‫saja ID tur karena sekarang kita

89
00:04:42,850 --> 00:04:44,040
‫berurusan dengan sumber

90
00:04:44,040 --> 00:04:45,440
‫daya yang berbeda di sini.

91
00:04:45,440 --> 00:04:48,363
‫Jadi sedikit lebih jelas untuk menyebutnya apa adanya.

92
00:04:52,885 --> 00:04:55,844
‫Kami sekarang ingin mengimplementasikan create review.

93
00:04:55,844 --> 00:04:58,094
‫Authcontroller dot melindungi.

94
00:05:00,960 --> 00:05:04,403
‫Kami juga ingin membatasi akses hanya untuk

95
00:05:11,472 --> 00:05:15,805
‫pengguna, dan tentu saja, pengontrol ulasan kami tidak

96
00:05:19,740 --> 00:05:22,033
‫membuat ulasan, oke.

97
00:05:22,980 --> 00:05:26,000
‫Sekali lagi, agak aneh dan kontra-intuitif untuk

98
00:05:26,000 --> 00:05:28,880
‫benar-benar memanggil pengontrol ulasan di sini

99
00:05:28,880 --> 00:05:30,593
‫di rute pengguna.

100
00:05:31,620 --> 00:05:34,273
‫Sebenarnya, itu tidak boleh di rute pengguna.

101
00:05:35,200 --> 00:05:36,990
‫Untuk beberapa alasan, saya

102
00:05:36,990 --> 00:05:41,140
‫membuka rute pengguna dan bukan rute tur, jadi maaf untuk yang itu.

103
00:05:41,140 --> 00:05:44,403
‫Mari kita potong dari sini, datang ke rute wisata kita, dan benar-benar

104
00:05:45,420 --> 00:05:47,320
‫melakukannya di sini di bagian bawah.

105
00:05:49,697 --> 00:05:52,523
‫Tentu saja kita juga perlu mendapatkan review controller.

106
00:05:56,490 --> 00:05:59,580
‫Jadi sekarang kita harus baik-baik saja.

107
00:05:59,580 --> 00:06:01,640
‫Itu adalah bug yang bodoh.

108
00:06:01,640 --> 00:06:03,920
‫Tapi bagaimanapun, apa yang saya

109
00:06:03,920 --> 00:06:06,610
‫katakan adalah tidak masuk akal untuk benar-benar

110
00:06:06,610 --> 00:06:09,720
‫memanggil pengontrol ulasan di rute tur, tetapi sekali

111
00:06:09,720 --> 00:06:12,300
‫lagi, untuk saat ini, kita perlu melakukannya

112
00:06:12,300 --> 00:06:15,000
‫seperti ini karena rute dimulai dengan tur.

113
00:06:15,000 --> 00:06:17,680
‫Router inilah yang akan diaktifkan.

114
00:06:17,680 --> 00:06:19,460
‫Di video berikutnya, kita akan

115
00:06:19,460 --> 00:06:21,350
‫memperbaikinya, tapi untuk saat ini, kita

116
00:06:21,350 --> 00:06:22,870
‫hanya ingin membuatnya bekerja

117
00:06:22,870 --> 00:06:25,840
‫dan menjadi akrab dengan seluruh konsep rute bersarang ini.

118
00:06:25,840 --> 00:06:29,540
‫Bagaimanapun, kami sekarang mendapatkan ID tur kami tepat di rute, tetapi tentu

119
00:06:29,540 --> 00:06:30,880
‫saja, kami perlu

120
00:06:30,880 --> 00:06:34,250
‫memberi tahu pengontrol bahwa itu sekarang harus menggunakan ID tur

121
00:06:34,250 --> 00:06:37,113
‫ini dan juga ID pengguna yang saat ini masuk.

122
00:06:38,100 --> 00:06:39,240
‫Kita sekarang perlu

123
00:06:39,240 --> 00:06:41,400
‫melanjutkan dan memperbarui pengontrol ulasan kami

124
00:06:43,630 --> 00:06:45,433
‫di sini di buat ulasan.

125
00:06:53,817 --> 00:06:56,370
‫Apa yang akan kita lakukan adalah ini.

126
00:06:56,370 --> 00:07:01,360
‫Kami akan mengatakan, jika tidak ada permintaan dot body dot tour,

127
00:07:02,990 --> 00:07:06,210
‫jadi pada dasarnya jika kami tidak menentukan

128
00:07:06,210 --> 00:07:08,180
‫ID tur dan body,

129
00:07:08,180 --> 00:07:10,870
‫maka kami ingin mendefinisikannya sebagai yang

130
00:07:10,870 --> 00:07:12,603
‫berasal dari URL.

131
00:07:14,080 --> 00:07:17,373
‫Req dot body dot tour sama dengan

132
00:07:19,210 --> 00:07:21,910
‫request, dan sekarang ingat bagaimana

133
00:07:21,910 --> 00:07:25,850
‫parameter URL tersebut pada request dot params dan tentu

134
00:07:25,850 --> 00:07:29,603
‫saja, nama parameter itu sendiri, jadi tour ID.

135
00:07:32,930 --> 00:07:34,640
‫Ini adalah bagian pertama dan kedua,

136
00:07:34,640 --> 00:07:37,060
‫kita juga perlu melakukan hal yang sama dengan pengguna.

137
00:07:38,450 --> 00:07:41,740
‫Jika tidak ada request

138
00:07:41,740 --> 00:07:46,710
‫dot user, atau sebenarnya request dot body dot

139
00:07:46,710 --> 00:07:50,180
‫user, maka request dot body

140
00:07:51,910 --> 00:07:56,910
‫dot user harus request dot user dot ID.

141
00:07:58,750 --> 00:08:01,520
‫Dan sekali lagi, kami mendapatkan pengguna

142
00:08:01,520 --> 00:08:05,193
‫titik permintaan dari middleware pelindung, dan hanya itu.

143
00:08:06,130 --> 00:08:11,130
‫Mari kita beri komentar di sini, rute bersarang.

144
00:08:13,390 --> 00:08:15,120
‫Dengan ini sebenarnya kita

145
00:08:15,120 --> 00:08:17,700
‫buat agar user tetap bisa menentukan secara

146
00:08:17,700 --> 00:08:19,603
‫manual tour dan user ID.

147
00:08:20,677 --> 00:08:21,860
‫Apa yang kami

148
00:08:21,860 --> 00:08:24,250
‫lakukan di sini hanyalah untuk mendefinisikannya ketika mereka

149
00:08:24,250 --> 00:08:27,343
‫tidak ada atau ketika mereka tidak ditentukan dalam badan permintaan.

150
00:08:28,827 --> 00:08:32,263
‫Ini seharusnya cukup bagi kita untuk mengujinya sekarang.

151
00:08:33,410 --> 00:08:35,320
‫Baiklah, jadi mari kita

152
00:08:35,320 --> 00:08:37,853
‫lihat pengguna yang kita dapatkan saat ini.

153
00:08:41,820 --> 00:08:43,610
‫Kami memiliki dua pengguna

154
00:08:43,610 --> 00:08:46,610
‫biasa ini, kami memiliki pengguna uji dan kami memiliki

155
00:08:46,610 --> 00:08:49,390
‫Jonas di sini, tetapi kami lupa kata sandinya.

156
00:08:49,390 --> 00:08:51,550
‫Mari kita lanjutkan dan hapus

157
00:08:51,550 --> 00:08:53,730
‫pengguna ini dan buat yang baru.

158
00:08:53,730 --> 00:08:58,730
‫Baiklah, jadi di Kompas, pengguna, dan ini

159
00:09:00,400 --> 00:09:01,773
‫dia.

160
00:09:07,220 --> 00:09:09,723
‫Mari kita buat ulang pengguna ini pada dasarnya.

161
00:09:11,220 --> 00:09:14,793
‫Yang kita butuhkan hanyalah dua bagian data ini.

162
00:09:17,110 --> 00:09:18,543
‫Sebenarnya itu mendaftar.

163
00:09:26,820 --> 00:09:28,310
‫Nama yang sama, email

164
00:09:29,600 --> 00:09:31,743
‫yang sama dan password yang sama juga.

165
00:09:35,657 --> 00:09:38,690
‫Pada titik ini, kita sudah masuk sebagai

166
00:09:38,690 --> 00:09:42,170
‫pengguna ini, yang disebut Jonas, mari kita ingat itu.

167
00:09:42,170 --> 00:09:44,950
‫Selanjutnya, kita harus memilih tur mana yang

168
00:09:44,950 --> 00:09:47,600
‫sebenarnya ingin kita buat ulasannya.

169
00:09:47,600 --> 00:09:49,790
‫Mari kita lakukan lagi di sini di The

170
00:09:49,790 --> 00:09:52,773
‫Forest Hiker sehingga kita mendapatkan banyak ulasan di tur yang sama.

171
00:09:54,240 --> 00:09:55,090
‫Apa yang

172
00:09:55,090 --> 00:09:57,380
‫akan kita lakukan sekarang adalah mengakses rute bersarang yang

173
00:09:57,380 --> 00:09:58,430
‫baru saja kita buat.

174
00:10:02,135 --> 00:10:03,350
‫Kami memiliki tur.

175
00:10:03,350 --> 00:10:05,980
‫Sekarang kita perlu mendapatkan ID tur,

176
00:10:05,980 --> 00:10:08,050
‫dan sekali lagi, kita akan

177
00:10:08,050 --> 00:10:09,323
‫menggunakan yang

178
00:10:12,490 --> 00:10:16,430
‫ini untuk The Forest Hiker, dan kemudian memotong ulasan, dan

179
00:10:16,430 --> 00:10:18,283
‫kemudian mengingat sebuah posting.

180
00:10:19,230 --> 00:10:21,963
‫Kemudian kita juga perlu menentukan otorisasi,

181
00:10:23,100 --> 00:10:27,010
‫jadi pembawa token, dan sekarang di dalam tubuh, yang

182
00:10:27,010 --> 00:10:28,610
‫kita butuhkan hanyalah

183
00:10:28,610 --> 00:10:30,673
‫menentukan peringkat dan ulasan.

184
00:10:36,830 --> 00:10:37,860
‫Peringkat adalah lima

185
00:10:45,220 --> 00:10:47,160
‫dan kemudian beberapa teks di sini.

186
00:10:47,160 --> 00:10:50,913
‫Jadi ini seharusnya sudah cukup untuk mencoba ini.

187
00:10:51,920 --> 00:10:52,753
‫Ayo kirim.

188
00:10:53,769 --> 00:10:56,520
‫Sekarang kami tidak memiliki izin untuk

189
00:10:56,520 --> 00:11:00,100
‫melakukan tindakan ini, untuk beberapa alasan, jadi itu aneh.

190
00:11:00,100 --> 00:11:03,460
‫Kami mendaftar sebagai Jonas ini, dan itu

191
00:11:03,460 --> 00:11:05,610
‫sebenarnya hanya pengguna biasa

192
00:11:06,490 --> 00:11:08,203
‫seperti yang seharusnya.

193
00:11:09,090 --> 00:11:11,533
‫Mari kita lihat router kita.

194
00:11:13,154 --> 00:11:17,170
‫Di sini, oh oke, itu pengguna, bukan pengguna.

195
00:11:19,120 --> 00:11:22,930
‫Bug kecil seperti itu dapat, seperti yang Anda

196
00:11:22,930 --> 00:11:27,333
‫lihat, merusak seluruh rute ini, jadi mari kita coba lagi sekarang.

197
00:11:28,530 --> 00:11:31,750
‫Dan sekarang kami benar-benar mendapatkan ulasan akhir

198
00:11:31,750 --> 00:11:35,300
‫dengan tur dan pengguna yang ditentukan dengan benar.

199
00:11:35,300 --> 00:11:38,140
‫Setidaknya saya berharap begitu.

200
00:11:38,140 --> 00:11:41,250
‫ID tur, Anda lihat, berakhir di sini pada 951, dan

201
00:11:41,250 --> 00:11:43,260
‫jadi persis sama di sini.

202
00:11:43,260 --> 00:11:47,640
‫Penggunanya adalah 1f3 ini, dan memang, ini adalah

203
00:11:47,640 --> 00:11:49,343
‫yang sama persis.

204
00:11:50,660 --> 00:11:53,280
‫Baiklah, jadi sekarang kita harus benar-benar

205
00:11:53,280 --> 00:11:56,170
‫dapat mengonfirmasi itu, jadi tur get

206
00:11:56,170 --> 00:11:59,230
‫ini sebenarnya sudah menjadi tur tempat kami

207
00:11:59,230 --> 00:12:01,165
‫membuat ulasan baru.

208
00:12:01,165 --> 00:12:04,460
‫Mari kita lihat, dan memang, sekarang

209
00:12:04,460 --> 00:12:06,660
‫kita mendapatkan dua ulasan.

210
00:12:06,660 --> 00:12:09,140
‫Ini adalah salah satu yang baru saja kita buat.

211
00:12:09,140 --> 00:12:11,790
‫Itu ada di tur yang benar

212
00:12:11,790 --> 00:12:15,450
‫dan tentu saja, juga pengguna yang benar dengan nama Jonas.

213
00:12:15,450 --> 00:12:17,973
‫Luar biasa, itu benar-benar keren.

214
00:12:19,620 --> 00:12:22,520
‫Mari kita lanjutkan dan simpan ini.

215
00:12:22,520 --> 00:12:24,720
‫Saya akan membuat folder baru di sini lagi.

216
00:12:25,610 --> 00:12:29,473
‫Aku akan menyebutnya tur slash review.

217
00:12:31,086 --> 00:12:33,663
‫Sekarang di sini,

218
00:12:34,705 --> 00:12:39,705
‫mari kita buat, buat ulasan baru tentang tur.

219
00:12:46,220 --> 00:12:49,537
‫Itu seharusnya benar-benar di luar dan seperti ini.

220
00:12:54,397 --> 00:12:56,103
‫Mari kita letakkan yang itu di sini.

221
00:12:57,450 --> 00:13:01,293
‫Itu tidak benar-benar berfungsi sebagaimana mestinya karena suatu alasan.

222
00:13:02,130 --> 00:13:03,403
‫Dan ini dia.

223
00:13:05,800 --> 00:13:08,260
‫Baiklah, itu bekerja dengan baik,

224
00:13:08,260 --> 00:13:10,870
‫tetapi seperti yang saya sebutkan sebelumnya,

225
00:13:10,870 --> 00:13:13,450
‫implementasinya agak membingungkan pada saat ini.

226
00:13:13,450 --> 00:13:16,890
‫Dan sekali lagi, itu karena kami secara teknis mendefinisikan

227
00:13:16,890 --> 00:13:19,333
‫rute ulasan di router tur.

228
00:13:20,220 --> 00:13:22,650
‫Itu agak membingungkan, jadi di video berikutnya,

229
00:13:22,650 --> 00:13:24,193
‫kita akan memperbaikinya.

