‫-: Di video kali ini, mari kita terapkan update dokumen.
‫Jadi, di sini, di penangan tur pembaruan kami, mari kita
‫mulai dengan menjadikannya fungsi asinkron.
‫Kemudian, atau coba catch block, jadi saya melakukannya dengan
‫sangat cepat sekarang, karena kita sudah terbiasa dengan ini pada
‫saat ini.
‫Benar?
‫Jadi ini masuk ke blok try dan kemudian
‫saya mendapatkan yang ini, di sini, dari blok catch dari fungsi
‫lain ini.
‫Baiklah, jadi.
‫Ini dia.
‫Jadi sekarang, apa yang
‫perlu kita lakukan di awal
‫blok try ini pada dasarnya adalah menanyakan
‫dokumen yang ingin kita perbarui dan kemudian memperbaruinya, oke?
‫Dan kita sebenarnya
‫bisa melakukan itu semua dalam satu perintah dengan luwak.
‫Dan, ingat, sekali lagi, kita akan memperbarui
‫tur berdasarkan ID, oke?
‫Jadi, situasinya mirip seperti ini di sini, di mana
‫kami menemukan berdasarkan ID.
‫Dan sekarang, kita sebenarnya dapat melakukan sesuatu
‫yang sangat mirip, yaitu menemukan dengan ID dan memperbarui.
‫Jadi sekali lagi, semuanya dalam satu permintaan.
‫Jadi, mari kita melakukan tur.
‫findByID dan perbarui.
‫Oke, jadi, apa yang perlu kita lewati di sini?
‫Nah, tentunya ID, agar kita bisa menemukan dulu
‫dokumen yang akan diupdate.
‫Jadi, sama seperti sebelumnya, yaitu req. param ID, dan
‫kemudian data yang sebenarnya ingin kita ubah.
‫Dan data itu akan ada di
‫badan, seperti di permintaan posting.
‫Jadi permintaan tubuh, oke?
‫Dan kemudian, sebenarnya sebagai argumen
‫ketiga, kami juga dapat menambal beberapa opsi, dan kami akan melakukannya.
‫Dan opsi pertama yang ingin saya tentukan adalah baru
‫dan setel ke true.
‫Karena dengan cara ini, maka dokumen baru yang
‫diperbarui adalah yang akan dikembalikan.
‫Dan karena kami ingin mengirim kembali dokumen
‫yang diperbarui itu ke klien, kami
‫selalu ingin metode ini benar-benar mengembalikan dokumen baru itu, oke?
‫Jadi dengan cara ini, sebenarnya masuk akal
‫untuk menunggu kueri ini dan kemudian menyimpannya ke variabel baru.
‫Jadi cukup sebut saja
‫tur di sini, dan sekali lagi, tunggu hasil dari kueri ini.
‫Jadi semua metode ini yang telah
‫kami gunakan di tur sejauh ini, jadi temukan dengan ID
‫dan perbarui, atau, yah, tidak benar-benar membuat, tetapi temukan dengan ID
‫atau temukan, semua ini akan mengembalikan kueri, jadi itu adalah kueri
‫metode dan izinkan saya
‫menunjukkannya kepada Anda di dokumentasi luwak.
‫Jadi, sampai saat ini, kami belum melihat
‫dokumentasinya sejauh ini.
‫Jadi, mari kita lakukan itu dengan cepat.
‫Jadi, pada model, yang dalam kasus kami adalah tur,
‫kami memiliki semua metode kueri ini, bukan?
‫Jadi Anda melihat menemukan, Anda melihat menemukan satu, Anda melihat menemukan berdasarkan ID,
‫yang hanya merupakan singkatan untuk menemukan satu.
‫Kemudian Anda melihat find by ID dan update,
‫yang merupakan salah satu
‫yang kami gunakan saat ini, dan yang
‫sebenarnya hanyalah singkatan dari find one and update, tempat kami meminta ID,
‫sangat mirip dengan apa yang kami telah di kuliah terakhir, oke?
‫Dan sebenarnya kita dapat mengklik salah satu dari ini,
‫jadi mari kita lakukan salah satu yang
‫kita gunakan saat ini, dan itu akan membawa kita ke
‫dokumentasi API yang menunjukkan kepada kita bagaimana benar-benar menggunakan metode tertentu.
‫Jadi Anda melihat bahwa kami melewati
‫ID, jadi nilainya, dari ID untuk kueri, kami melewati
‫objek dengan data yang akan diperbarui, dan kami melewati objek opsi.
‫Dan di sini kita benar-benar dapat
‫melihat opsi yang dapat kita atur, jadi
‫ingat, kita baru saja mengatur new menjadi true, dan seperti
‫yang dikatakan di sini yang kemudian akan mengembalikan dokumen
‫yang dimodifikasi daripada aslinya.
‫Nah, satu lagi yang sebenarnya ingin
‫kita set ke true adalah validator yang dijalankan ini, sehingga
‫setiap kali kita memperbarui dokumen tertentu, maka validator yang
‫kita tentukan dalam skema akan berjalan lagi, oke?
‫Dan kita akan berbicara banyak tentang validator dan validasi nanti
‫di bagian ini, tapi
‫saya akan meninggalkannya di sini untuk saat ini sehingga kita, pada dasarnya,
‫tidak melupakannya.
‫Oke?
‫Simpan sekarang, dan sebenarnya saya ingin kembali ke sini hanya
‫untuk menunjukkan kepada Anda berapa banyak
‫metode yang sebenarnya kita miliki di luwak.
‫Jadi, pada model, kami memiliki semua metode ini di sini yang
‫Anda lihat dalam daftar ini.
‫Jadi misalnya kita menggunakan create sebelumnya, kita
‫juga menggunakan find.
‫Oke?
‫Jadi yang Anda lihat di sini di atas,
‫mereka tersedia langsung di modelnya, dan itu,
‫dalam kasus kami, adalah turnya.
‫Nah, di bawah sini Anda, misalnya
‫juga melihat model. prototipe. aman misalnya.
‫Dan yang satu ini, sebenarnya kami
‫juga sudah menggunakannya saat pertama kali mulai bekerja dengan luwak.
‫Jadi saya tidak yakin apakah Anda terbiasa dengan ini,
‫tetapi dalam model skrip java. prototipe selalu berarti
‫objek yang dibuat dari kelas, atau dalam hal
‫ini, dibuat dari model.
‫Jadi, metode simpan di sini, mengacu pada metode simpan
‫yang dipanggil pada dokumen dan bukan pada tur.
‫Dan ingat bahwa itulah yang kami lakukan.
‫Dan saya pikir saya masih memilikinya di sini sebagai komentar.
‫Ya, di sini.
‫Jadi, kami memiliki tur, variabel tur baru ini di
‫sini yang dibuat dari model tur,
‫dan tur baru ini di sini mendapat akses ke metode simpan
‫karena itu adalah bagian dari objek prototipe kelas ini.
‫Baiklah, sekarang saya tidak ingin membuat Anda
‫bosan dengan dasar-dasar java script,
‫tetapi penting untuk memahami dokumentasinya, oke?
‫Karena pada titik tertentu Anda perlu menggunakan dokumentasi,
‫karena luwak itu yute.
‫Dan saya sebenarnya akan mengajari Anda banyak
‫hal yang penting di sana melalui semua kursus ini,
‫tetapi terkadang Anda masih membutuhkan sesuatu yang tidak saya
‫tunjukkan dalam kursus ini.
‫Jadi, penting bagi Anda
‫untuk benar-benar memahami dokumentasinya juga, oke?
‫Jadi, sekali lagi, ketika Anda melihat model. prototipe di sini,
‫Anda tahu bahwa metode simpan
‫di sini akan tersedia di semua instance
‫yang dibuat melalui model, oke?
‫Jadi, bukan model itu sendiri.
‫Jadi, misalnya, jika Anda mencoba tur. simpan Anda
‫tidak akan dapat menggunakannya.
‫Ini akan memberi Anda kesalahan, tetapi sebaliknya, jika Anda mencoba
‫menyimpan pada dokumen yang dibuat melalui tur, maka
‫tentu saja itu akan berhasil, oke?
‫Saya harap itu masuk akal.
‫Lagi pula, Anda melihat bahwa kami
‫memiliki banyak hal lain, jadi kami harus menanyakan, yang telah
‫kami bicarakan, karena, misalnya, temukan berdasarkan ID dan perbarui, atau
‫temukan, atau temukan berdasarkan ID, semua ini akan mengembalikan objek kueri.
‫Jadi, nanti, ketika kita akan mengimplementasikan
‫hal-hal seperti pengurutan atau penyaringan, kita akan menggunakan objek kueri ini.
‫Oke?
‫Jadi, mari kita kembali, kita agak keluar jalur di sini dengan
‫melihat dokumentasi, tetapi, sekali lagi, saya pikir
‫sangat penting untuk mulai
‫melihat dokumentasi, karena kursus seperti ini
‫hanya dapat membawa Anda sejauh ini, dan saya harap
‫Anda sudah tahu itu pada saat ini, oke?
‫Sangat penting bahwa Anda juga dapat menemukan informasi
‫sendiri, dan saya ingin menunjukkan cara melakukannya
‫juga dalam kursus ini.
‫Bagaimanapun, sekarang mari kita juga mengirimkan tur yang
‫baru diperbarui ini kembali ke klien, yang, saat ini,
‫tidak kami lakukan, karena kami hanya
‫memiliki string tur yang diperbarui ini di sini.
‫Jadi mari kita singkirkan itu dan kirimkan ke tur.
‫Dan ingat bahwa ini, sebenarnya, adalah ini.
‫Jadi, properti wisata diatur ke objek wisata, tetapi berkat
‫ES6, kita tidak perlu lagi melakukannya ketika
‫nama properti memiliki nama yang sama dengan nilainya.
‫Oke, jadi mari kita singkirkan itu.
‫Itu membuat kode kita terlihat sedikit lebih baik.
‫Oke, dan sekarang mari kita uji.
‫Kembali ke tukang pos, di sini kami memiliki rute tur yang diperbarui.
‫Jadi, mari kita lakukan
‫pada ID yang sama yang kita gunakan sebelumnya.
‫Jadi, yang ini.
‫Kemudian kita datang ke tubuh, di sini, dan mari kita berubah--
‫Nah, apa yang akan kita ubah di sini?
‫Nah, mari kita ubah harganya menjadi, seperti, 500.
‫Jadi, harga, 500, kirim, dan memang
‫ini memberi kita objek yang baru
‫diperbarui dengan harga yang sudah
‫ditetapkan ke 500.
‫Dan jika kita sekarang mendapatkan semua tur, maka itu, tentu
‫saja, harus tercermin di sini.
‫Dan ini dia.
‫Tapi sekarang, katakanlah kita mengaturnya ke string.
‫Mari kita lihat apa yang terjadi, kalau begitu.
‫Nah, kemudian kita benar-benar mendapatkan kesalahan.
‫Dan itu karena kami menjalankan validator lagi.
‫Jadi, ingat kita punya-- Dimana
‫itu?
‫Oh ya, di sini.
‫Jadi di sini kita tentukan bahwa validator harus dijalankan kembali.
‫Jadi, saat ini harganya bukan lagi angka seperti
‫yang diharapkan, kan?
‫Jadi dalam skema kami mengatakan bahwa harga harus berupa
‫angka, tetapi, tentu saja, skrip java, atau
‫luwak, sebenarnya, pada dasarnya, tidak dapat mengubah string ini di sini menjadi angka.
‫Tapi itulah yang kami harapkan.
‫Jadi di sini dikatakan jenis harus nomor.
‫Jadi, karena itu, ini memberi
‫kami kesalahan, hanya karena kami menjalankan validator lagi.
‫Jadi, mari kita kembalikan ke 500 dan kemudian, tentu saja,
‫itu akan kembali.
‫Baiklah, sekarang, perlu diingat bahwa kita sebenarnya
‫melakukan permintaan tambalan di sini.
‫Nah, jika kita melakukan permintaan put, ingat, maka
‫Anda akan berharap bahwa objek asli
‫akan sepenuhnya
‫diganti dengan yang baru yang dikirim, oke?
‫Jadi, dalam hal ini tidak
‫akan berfungsi seperti yang
‫kita terapkan di sini karena yang ini benar-benar
‫memperbarui bidang yang berbeda di sini di dalam tubuh, oke?
‫Tapi bagaimanapun, saya pikir metode
‫tambalan sebenarnya jauh lebih
‫berguna, dan hanya itu yang akan diterapkan di sini.
‫Keren, jadi kami menerapkan tiga dari empat operasi yang
‫benar, hanya satu lagi yang tersisa,
‫yang akan dihapus.