‫Instruktur: Jadi, dalam
‫dua video terakhir, kami membuat titik akhir
‫POST bersarang untuk membuat ulasan baru pada tur tertentu.
‫Jadi, sekarang mari kita
‫membangunnya, dan juga membuat titik akhir GET bersarang.
‫Jadi kita sudah mengimplementasikan fungsi
‫handler getAllReviews, bukan?
‫Tetapi saat ini, yang dilakukannya hanyalah mendapatkan
‫serangkaian semua ulasan dalam koleksi ulasan.
‫Sekarang, kasus penggunaan umum untuk API
‫Anda mungkin untuk mendapatkan larik semua ulasan
‫dari satu tur tertentu,
‫jadi sangat mirip dengan createReview, bukan?
‫Jadi pada dasarnya mirip dengan rute ini di
‫sini, tetapi kecuali dengan GET.
‫Jadi, pada dasarnya seperti ini, oke?
‫Jadi, yang perlu kita lakukan untuk
‫mengimplementasikan ini adalah melakukan beberapa
‫perubahan sederhana pada fungsi handler getAllReviews kita, bukan?
‫Karena sekarang, berkat param gabungan, dan
‫pengalihan semacam ini yang kami terapkan di sini di video
‫terakhir, jadi berkat semua itu, fungsi handler
‫getAllReviews ini sekarang akan secara otomatis dipanggil setiap
‫kali ada permintaan GET untuk
‫URL yang terlihat seperti
‫ini, dan juga akan mendapatkan akses ke
‫tourId, dan sekali lagi, berkat mergeParams disetel ke true.
‫Baiklah?
‫Jadi mari kita lakukan beberapa perubahan yang sangat sederhana di sini, oke?
‫Dan apa yang akan
‫kita lakukan di sini adalah untuk memeriksa apakah ada tourId,
‫dan jika ada, maka kita hanya
‫akan mencari review dimana tour sama dengan tourId itu, oke?
‫Jadi, itu adalah
‫sesuatu yang sangat sederhana untuk diterapkan menggunakan find, bukan?
‫Jadi pada dasarnya, apa yang kami lakukan adalah seperti ini.
‫Jadi, jika ada permintaan. param tourId, lalu
‫kita ingin membuat objek filter, yang
‫nantinya akan kita gunakan di sini.
‫Mari kita letakkan di sini segera,
‫dan kita juga perlu menginisialisasinya.
‫Jadi, mari kita filter, karena kita ingin mengubah ini, oke?
‫Jadi, jika ada tourId, maka filter ini harus
‫sama dengan tour:
‫req. param ID tur.
‫Oke, dan sekali lagi, jika ada tourId,
‫maka pada dasarnya, objek inilah yang akan ada di sini.
‫Maka hanya ulasan di mana
‫tur cocok dengan ID yang akan ditemukan.
‫Jadi jika itu semua panggilan API biasa tanpa
‫rute bersarang, maka filter itu hanya akan menjadi objek kosong
‫ini, dan kemudian kita akan menemukan semua ulasannya, oke?
‫Dan, jadi, mari kita uji
‫ini, karena hanya ini yang perlu kita ubah di sini, oke?
‫Jadi, mari
‫kita simpan yang ini, yang ini juga, oke?
‫Jadi, untuk memulai, mari kita uji apakah
‫getAllReviews kita, jadi yang biasa, masih berfungsi sebagaimana mestinya, oke?
‫Jadi kami mendapatkan keempat ulasan yang ada dalam koleksi kami.
‫Mari kita verifikasi
‫saja, dan memang ada empat dokumen, oke?
‫Tapi sekarang,
‫mari kita buat rute getAllReviews bersarang kita, oke?
‫Jadi, yang akan saya lakukan adalah menyalin yang ini.
‫Oke, dan kemudian cukup tambahkan ulasan, oke?
‫Jadi tur ini adalah City Wanderer, dan
‫sebenarnya ada satu ulasan.
‫Jadi, kami berharap sekarang untuk mendapatkan
‫array dengan satu objek di sana, oke?
‫Jadi, itu hanya memiliki satu ulasan.
‫Dan memang, itulah yang kita dapatkan.
‫Jadi ini semua ulasan yang ada di tur ini, jadi,
‫tur dengan ID ini.
‫Dan, sebenarnya, itu cukup benar, bukan?
‫Mari kita coba yang lain, dan saya ingat yang ini,
‫jadi Pendaki Hutan, sebenarnya saya pikir dua ulasan.
‫Jadi mari kita lihat apakah itu berhasil juga.
‫Dan ya, memang.
‫Ini dia.
‫Baiklah?
‫Jadi mari simpan itu, masih di folder tur/ulasan itu,
‫dan dapatkan AllReviews di tur.
‫Oke, bagus.
‫Itu sebenarnya semua saya harus menunjukkan kepada Anda tentang rute bersarang.
‫Jadi selanjutnya, mari kita lanjutkan mengisi review controller kita,
‫karena saat ini kita benar-benar hanya memiliki
‫getAllReviews dan createReview.
‫Jadi kami juga ingin
‫memperbarui, menghapus, dan semua itu, jadi
‫mari kita selesaikan itu di kuliah berikutnya.