‫-: Selamat datang kembali di video terakhir dari bagian ini.
‫Dan di bagian ini kami menyelesaikan proyek kami,
‫baik API maupun situs web yang dirender, setidaknya
‫untuk saat ini.
‫Jadi sekali lagi, selamat untuk mencapai titik ini dan
‫telah menonton lebih dari 30 jam video, selalu
‫mendengarkan suara saya.
‫Pokoknya di video terakhir ini,
‫saya ingin segera membahas beberapa topik yang
‫dapat kami tambahkan ke API dan situs web, dan
‫pada dasarnya meninggalkannya untuk Anda sebagai tantangan jika
‫Anda mau.
‫Jadi kami dapat menambahkan beberapa logika bisnis
‫ke proyek kami, misalnya, menambahkan
‫batasan bahwa pengguna hanya dapat meninjau tur yang sebenarnya
‫telah mereka pesan.
‫Dan itu akan sangat masuk akal, bukan?
‫Jadi saya ingin Anda mencobanya sendiri
‫jika Anda mau.
‫Sekarang tantangan-tantangan ini tidak akan saya selesaikan
‫sendiri, kecuali jika benar-benar ada banyak permintaan untuk salah satunya.
‫Dan saya benar-benar
‫meninggalkan tantangan yang lebih rumit semacam ini
‫bagi siswa untuk benar-benar dilakukan sendiri di kursus saya
‫yang lain, dan saya benar-benar melihat beberapa hasil kreatif dalam banyak kasus.
‫Jadi saya harap Anda juga mencoba beberapa di antaranya.
‫Sekarang, selanjutnya, Anda
‫juga dapat menerapkan beberapa rute pemesanan bersarang,
‫misalnya, mendapatkan semua pemesanan untuk tur
‫tertentu dan mendapatkan semua pemesanan untuk
‫pengguna tertentu, jadi berdasarkan id.
‫Anda juga dapat secara dramatis meningkatkan tanggal tur, dan yang
‫saya maksud dengan itu adalah Anda dapat menambahkan peserta
‫dan bidang yang terjual ke setiap tanggal.
‫Dan tanggalnya kemudian
‫menjadi semacam contoh tur.
‫Kemudian ketika pengguna benar-benar memesan tur,
‫mereka harus memilih salah satu tanggal yang
‫tersedia, dan kemudian
‫pemesanan Anda di salah satu tanggal
‫tersebut akan menambah jumlah peserta pada tanggal tersebut
‫hingga dipesan, jadi pada dasarnya saat peserta lebih
‫banyak dari ukuran kelompok maksimum.
‫Sekarang akhirnya tentu saja ketika pengguna
‫ingin memesan tur tertentu pada tanggal tertentu,
‫Anda perlu memeriksa apakah tur tersebut masih tersedia pada
‫tanggal yang dipilih.
‫Oke?
‫Jadi itu sebenarnya tantangan yang cukup rumit tetapi
‫juga sangat menyenangkan untuk diterapkan, dan
‫benar-benar akan menambahkan beberapa logika bisnis yang signifikan
‫untuk proyek ini.
‫Terakhir, Anda juga dapat
‫menerapkan beberapa fitur autentikasi lanjutan
‫yang telah kita bicarakan sebelumnya
‫di bagian keamanan.
‫Misalnya, Anda dapat mengonfirmasi alamat email pengguna pada
‫dasarnya dengan mengirimi mereka email dengan tautan
‫yang perlu
‫mereka klik, dan hanya
‫setelah klik, pengguna kemudian benar-benar terdaftar di aplikasi
‫dan dapat melakukan hal-hal seperti membeli tur.
‫Anda juga dapat membuat pengguna
‫tetap masuk dengan sesuatu yang disebut token penyegaran.
‫Dan itu lagi-lagi agak rumit untuk diterapkan,
‫tetapi jika Anda mencari di Google tentang cara
‫kerjanya, maka saya yakin Anda dapat
‫menemukan solusi yang baik atau Anda bahkan dapat membuatnya sendiri.
‫Terakhir, Anda juga dapat menerapkan autentikasi dua faktor, tetapi
‫yang ini bahkan membuatnya selangkah lebih maju.
‫Jadi pada dasarnya ketika pengguna
‫masuk, mereka kemudian menerima sesuatu seperti pesan
‫teks di ponsel mereka dengan kode yang
‫harus mereka masukkan
‫ke dalam aplikasi untuk diautentikasi setelah langkah kedua itu.
‫Jadi ini adalah beberapa tantangan
‫bagus yang benar-benar dapat Anda terapkan di situs API,
‫pada dasarnya proyek.
‫Tetapi juga ada hal-hal yang dapat Anda lakukan di situs web.
‫Misalnya, Anda dapat menerapkan formulir pendaftaran, yang
‫seharusnya sangat mirip dengan formulir masuk.
‫Jadi saya tidak melakukannya karena sangat mirip dengan
‫formulir login,
‫jadi saya tidak ingin membuang waktu dengan melakukan itu.
‫Tetapi tentu saja Anda dapat melanjutkan
‫dan menerapkannya juga.
‫Kemudian hal menyenangkan lainnya yang dapat Anda lakukan di situs
‫web adalah bahwa pada halaman detail tur,
‫Anda dapat mengizinkan
‫pengguna untuk menambahkan ulasan secara langsung di
‫situs web, tetapi hanya jika pengguna telah mengikuti tur tersebut.
‫Jadi, Anda harus memeriksa apakah pengguna yang
‫masuk saat ini benar-benar memesan tur
‫saat ini, dan juga apakah waktu tur telah berlalu.
‫Dan jika demikian, maka Anda dapat menambahkan formulir
‫ke halaman tempat pengguna
‫dapat menambahkan ulasan baru, misalnya, menggunakan API ulasan kami.
‫Atau juga, dan yang ini sedikit terkait,
‫Anda dapat menyembunyikan seluruh bagian pemesanan
‫di halaman detail tur yang sama jika pengguna saat
‫ini telah memesan tur.
‫Oke.
‫Ini kemudian akan mencegah pengguna yang sama memesan
‫tur yang sama dua kali.
‫Dan kemudian karena Anda sudah melakukannya di bagian
‫depan, Anda juga harus mencegah
‫pemesanan duplikat di bagian belakang model Anda.
‫Itu sebenarnya akan sangat
‫mirip dengan mencegah ulasan duplikat dari pengguna yang sama.
‫Oke.
‫Juga, Anda
‫dapat menerapkan fungsi tur like yang sangat bagus.
‫Jadi di mana Anda memiliki sesuatu seperti
‫tombol suka atau hati di tur,
‫dan kemudian ketika pengguna
‫mengkliknya, itu akan ditambahkan ke favorit mereka.
‫Dan kemudian
‫di situs web, Anda dapat memiliki halaman favorit atau hanya panel favorit di
‫mana pengguna dapat melihat semua tur favorit mereka.
‫Jadi itu tidak terlalu sulit
‫tapi saya pikir sangat menyenangkan untuk diterapkan.
‫Selanjutnya di halaman akun pengguna, Anda
‫dapat menerapkan halaman Ulasan Saya, yang
‫sudah memiliki tautan sekarang,
‫dan pada halaman itu pengguna dapat
‫melihat dan mungkin juga mengedit dan menghapus semua ulasan mereka sendiri.
‫Sekarang jika Anda tahu React, maka
‫ini akan menjadi cara yang luar biasa
‫untuk menggunakan Natours API dan juga melatih keterampilan React Anda pada
‫saat yang bersamaan.
‫Dan setelah Anda melakukannya dengan
‫React, Anda sebenarnya dapat membuat ulang seluruh halaman
‫sebagai aplikasi satu halaman dengan React atau
‫sesuatu seperti ini.
‫Jadi seperti Angular atau Vue juga akan berfungsi untuk ini.
‫Benar.
‫Jadi akan sangat bagus jika Anda melakukan
‫itu, dan saya benar-benar akan sangat senang melihat ini diterapkan.
‫Terakhir, untuk administrator, Anda dapat
‫menerapkan halaman Kelola, di mana
‫admin kemudian dapat membuat, membaca, memperbarui, dan
‫menghapus semua sumber daya,
‫begitu juga semua tur, pengguna, ulasan, dan pemesanan.
‫Sekali lagi, React mungkin cocok untuk ini, atau
‫jika tidak, maka hanya Javascript
‫biasa di bagian depan juga akan bekerja
‫dengan sangat baik, misalnya, perbarui semua sumber daya ini menggunakan panggilan Ajax.
‫Jadi, ada banyak hal yang dapat Anda terapkan
‫untuk meningkatkan proyek dan situs web
‫kami lebih jauh lagi.
‫Benar?
‫Dan saya yakin Anda bahkan
‫bisa menemukan beberapa hal lain di sini.
‫Jadi sekali lagi, akan sangat
‫luar biasa melihat beberapa fitur ini benar-benar diterapkan oleh Anda.
‫Dan jika Anda melakukan salah satunya atau bahkan
‫lebih, pastikan untuk membagikan hasil Anda di
‫bagian Tanya Jawab kursus.
‫Anyway, itu saja untuk video ini dan untuk bagian ini
‫dan juga hampir untuk kursus ini.
‫Jadi pekerjaan hebat sekali lagi dan sekarang selanjutnya,
‫yang tersisa untuk dilakukan adalah menyiapkan aplikasi
‫untuk penerapan, dan
‫kemudian benar-benar menerapkannya ke server produksi langsung untuk benar-benar
‫membagikan proyek kami dengan dunia.