﻿1
00:00:01,100 --> 00:00:03,700
‫Instruktur: Sekarang mari kita isi

2
00:00:03,700 --> 00:00:06,503
‫ulasan dengan pengguna dan data tur.

3
00:00:08,360 --> 00:00:11,470
‫Jadi seperti yang dilakukan pada tur,

4
00:00:11,470 --> 00:00:14,910
‫sekarang mari kita buat agar tur dan pengguna

5
00:00:14,910 --> 00:00:19,330
‫akan terisi secara otomatis setiap kali ada kueri untuk ulasan.

6
00:00:19,330 --> 00:00:22,110
‫Karena kita sudah melakukan itu sebelumnya,

7
00:00:22,110 --> 00:00:25,140
‫sekarang saya akan memberi Anda tantangan lain, oke.

8
00:00:25,140 --> 00:00:27,140
‫Jadi saya ingin Anda melanjutkan

9
00:00:27,140 --> 00:00:31,060
‫dan melakukannya seperti yang kita lakukan di tur, tetapi sekarang untuk ulasannya.

10
00:00:31,060 --> 00:00:32,850
‫Hanya petunjuk yang perlu saya

11
00:00:32,850 --> 00:00:35,140
‫berikan kepada Anda sebelum Anda dapat melakukan

12
00:00:35,140 --> 00:00:37,490
‫ini sendiri, adalah ketika Anda ingin mengisi

13
00:00:37,490 --> 00:00:40,140
‫dua bidang, Anda harus benar-benar memanggil isi dua kali.

14
00:00:40,140 --> 00:00:43,430
‫Jadi sekali untuk masing-masing bidang, baiklah.

15
00:00:43,430 --> 00:00:45,740
‫Dengan informasi itu, sebaiknya

16
00:00:45,740 --> 00:00:48,763
‫Anda menjeda video sekarang dan mencobanya.

17
00:00:52,780 --> 00:00:55,023
‫Jadi saya harap itu tidak terlalu sulit.

18
00:00:56,070 --> 00:00:59,583
‫Mari kita lanjutkan dan tutup saja beberapa file di

19
00:01:00,850 --> 00:01:04,320
‫sini, jadi semua yang tidak terkait dengan ulasan tidak

20
00:01:04,320 --> 00:01:05,603
‫kita perlukan lagi.

21
00:01:06,740 --> 00:01:10,440
‫Jadi mari kita pergi ke model review dan kemudian mengimplementasikan,

22
00:01:10,440 --> 00:01:12,823
‫atau menemukan middleware terlebih dahulu.

23
00:01:14,900 --> 00:01:18,120
‫Jadi kami melakukannya pada skema, seperti yang

24
00:01:18,120 --> 00:01:21,870
‫sudah Anda ketahui, dan sekali lagi kami menggunakan ekspresi

25
00:01:21,870 --> 00:01:25,883
‫reguler untuk mencocokkan string pada dasarnya, yang dimulai dengan find.

26
00:01:27,170 --> 00:01:30,100
‫Jadi sekali lagi, ini akan berfungsi untuk

27
00:01:30,100 --> 00:01:34,160
‫find, find one, dan semua metode find one lainnya yang

28
00:01:34,160 --> 00:01:35,710
‫tersedia di Mongoose.

29
00:01:40,960 --> 00:01:44,340
‫Seperti biasa, saya mulai dengan menulis berikutnya.

30
00:01:44,340 --> 00:01:46,180
‫Dan sekarang yang perlu kita lakukan

31
00:01:46,180 --> 00:01:51,123
‫hanyalah memanggil populate pada kueri saat ini, jadi ini. mengisi, dan sekarang saya

32
00:01:53,200 --> 00:01:56,460
‫akan benar-benar menentukan objek opsi karena saya

33
00:01:56,460 --> 00:01:59,550
‫hanya ingin memilih beberapa bidang dan bukan

34
00:01:59,550 --> 00:02:02,573
‫seluruh tur, dan juga bukan seluruh pengguna.

35
00:02:03,790 --> 00:02:07,540
‫Jadi ingat, kita mulai dengan properti path, dan

36
00:02:07,540 --> 00:02:10,053
‫yang ini untuk tur.

37
00:02:11,140 --> 00:02:15,280
‫Jadi sekali lagi, dengan menetapkan tur di sini, berarti bidang ini

38
00:02:15,280 --> 00:02:17,750
‫di sini, yang memiliki beberapa nama

39
00:02:17,750 --> 00:02:20,230
‫persis, akan menjadi bidang yang diisi

40
00:02:20,230 --> 00:02:21,860
‫berdasarkan model tur.

41
00:02:21,860 --> 00:02:25,580
‫Nah, karena itulah yang kami tentukan di sini, oke.

42
00:02:25,580 --> 00:02:28,530
‫Jadi referensinya adalah model yang disebut

43
00:02:28,530 --> 00:02:31,680
‫tour, dan pada dasarnya di koleksi itulah

44
00:02:31,680 --> 00:02:35,533
‫Mongoose akan mencari dokumen dengan ID yang kita tentukan.

45
00:02:36,640 --> 00:02:41,290
‫Baiklah, jadi kami ingin tur, tetapi katakanlah kami sebenarnya hanya

46
00:02:42,360 --> 00:02:45,070
‫menginginkan nama tur dan tidak

47
00:02:45,070 --> 00:02:46,823
‫ada yang lain.

48
00:02:47,830 --> 00:02:52,140
‫Jadi pilih, oke, lalu hanya namanya, lalu seperti yang saya katakan,

49
00:02:52,140 --> 00:02:55,680
‫jika kita ingin mengisi beberapa bidang, yang perlu

50
00:02:55,680 --> 00:02:58,453
‫kita lakukan hanyalah memanggil populate lagi.

51
00:03:00,370 --> 00:03:03,950
‫Jadi pada titik ini kueri diisi dengan tur, dan sekarang

52
00:03:03,950 --> 00:03:05,650
‫kita perlu mengisinya lagi, kali

53
00:03:05,650 --> 00:03:07,123
‫ini dengan pengguna.

54
00:03:13,130 --> 00:03:15,110
‫Dan sekarang pilih,

55
00:03:15,110 --> 00:03:19,690
‫dan itu sebenarnya hanya menampilkan nama pengguna dan foto,

56
00:03:19,690 --> 00:03:22,510
‫dan bukan misalnya, hal-hal seperti email.

57
00:03:22,510 --> 00:03:23,800
‫Jadi katakanlah seseorang

58
00:03:23,800 --> 00:03:26,140
‫membuka API untuk mendapatkan semua ulasan,

59
00:03:26,140 --> 00:03:28,720
‫tetapi kemudian kami tidak ingin membocorkan semua

60
00:03:28,720 --> 00:03:32,200
‫detail tentang pengguna yang memposting ulasan ini ke klien.

61
00:03:32,200 --> 00:03:35,550
‫Jadi seharusnya tidak ada yang benar-benar dapat

62
00:03:35,550 --> 00:03:39,310
‫mengetahui data pribadi tentang pengulas, seperti email, oke.

63
00:03:39,310 --> 00:03:44,060
‫Jadi sekali lagi, kami hanya membocorkan, kami hanya mengirim data yang relevan

64
00:03:44,060 --> 00:03:48,720
‫tentang pengguna, dan dalam hal ini, itu nama dan foto, oke.

65
00:03:48,720 --> 00:03:51,920
‫Jadi berikan ini simpanan, dan jika kita sekarang

66
00:03:51,920 --> 00:03:54,360
‫mencapai atau mendapatkan semua titik akhir

67
00:03:54,360 --> 00:03:58,070
‫ulasan, maka tur dan pengguna harus diisi alih-alih kita

68
00:03:58,070 --> 00:04:00,323
‫hanya melihat ID di sana.

69
00:04:01,320 --> 00:04:04,240
‫Mari kita coba itu, dan ini dia.

70
00:04:04,240 --> 00:04:07,260
‫Jadi itu berfungsi, kami mendapatkan nama,

71
00:04:07,260 --> 00:04:11,890
‫dan tentu saja juga ID, dan kemudian sama untuk pengguna.

72
00:04:11,890 --> 00:04:14,783
‫Jadi kita mendapatkan namanya, tapi kemudian bukan fotonya.

73
00:04:15,780 --> 00:04:19,170
‫Jadi mari kita lihat, mungkin saya tidak mendapatkan, tentukan

74
00:04:19,170 --> 00:04:22,160
‫properti foto, jadi mari kita lihat itu.

75
00:04:22,160 --> 00:04:26,190
‫Jadi userModel, tapi sebenarnya itu ada.

76
00:04:26,190 --> 00:04:29,900
‫Tidak, maaf, tentu saja kami tidak melihat foto tersebut karena kami

77
00:04:29,900 --> 00:04:33,463
‫tidak pernah menentukan foto apa pun untuk pengguna kami.

78
00:04:34,470 --> 00:04:38,230
‫Oke, dan karena itu satu-satunya properti yang benar-benar ada adalah

79
00:04:38,230 --> 00:04:41,550
‫namanya, dan itulah yang kemudian kita dapatkan.

80
00:04:41,550 --> 00:04:44,520
‫Oke, dan itu sebenarnya.

81
00:04:44,520 --> 00:04:47,550
‫Sangat sederhana, hanya itu yang perlu kita lakukan untuk

82
00:04:47,550 --> 00:04:49,020
‫mendapatkan semua data

83
00:04:49,020 --> 00:04:52,280
‫terkait, dan seperti yang kita tentukan dalam model data kita.

84
00:04:52,280 --> 00:04:53,900
‫Sekali lagi, perlu

85
00:04:53,900 --> 00:04:56,690
‫diingat bahwa yang satu ini akan menambahkan

86
00:04:56,690 --> 00:04:59,110
‫beberapa kueri tambahan, dan dalam kasus

87
00:04:59,110 --> 00:05:01,410
‫ini, sebenarnya ini adalah dua

88
00:05:01,410 --> 00:05:05,200
‫kueri, karena di balik layar, Luwak sebenarnya harus menanyakan tur

89
00:05:05,200 --> 00:05:08,690
‫dan juga pengguna untuk menemukan dokumen yang cocok, oke.

90
00:05:08,690 --> 00:05:09,670
‫Jadi ini mungkin

91
00:05:09,670 --> 00:05:12,230
‫harus menambahkan beberapa waktu di sini untuk kueri.

92
00:05:12,230 --> 00:05:16,340
‫Jadi butuh 266 milidetik, seperti ini.

93
00:05:16,340 --> 00:05:19,700
‫Mari kita, demi eksperimen, mengomentari kode

94
00:05:19,700 --> 00:05:22,593
‫ini, lalu coba lagi.

95
00:05:24,800 --> 00:05:28,340
‫Dan ini memakan banyak waktu, saya tidak yakin mengapa.

96
00:05:28,340 --> 00:05:32,423
‫Jadi mari kita lakukan lagi, dan jadi Anda lihat, 157 milidetik,

97
00:05:33,280 --> 00:05:37,033
‫dan jika sekarang kita mengembalikannya, mari kita lakukan lagi.

98
00:05:39,080 --> 00:05:40,560
‫Dan lagi, itu membutuhkan banyak

99
00:05:40,560 --> 00:05:42,750
‫waktu, dan sekali lagi, saya melakukannya dua kali.

100
00:05:42,750 --> 00:05:45,900
‫Tapi tetap saja Anda lihat butuh waktu sedikit lebih lama, oke.

101
00:05:45,900 --> 00:05:47,570
‫Jadi bukan akhir

102
00:05:47,570 --> 00:05:50,450
‫dunia, itu seperti 100 milidetik lebih, tetapi

103
00:05:50,450 --> 00:05:52,330
‫ketika Anda mencapai skala

104
00:05:52,330 --> 00:05:54,410
‫tertentu, itu mungkin membuat perbedaan.

105
00:05:54,410 --> 00:05:57,580
‫Jadi sekali lagi, saya hanya ingin Anda mengingatnya.

106
00:05:57,580 --> 00:06:01,113
‫Bagaimanapun, itu saja untuk kuliah ini, jadi mari kita lanjutkan.

