‫Instruktur: Halo dan selamat datang kembali.
‫Jadi, sekarang saatnya untuk menghubungkan database MongoDB yang
‫kita buat dengan aplikasi Express kita.
‫Dan, langkah pertama untuk
‫melakukannya adalah mendapatkan string koneksi kita dari Atlas.
‫Jadi, seperti yang kita lakukan sebelumnya ketika kita menghubungkan
‫database ke Compass dan Mongo Shell,
‫kita perlu mendapatkan string
‫koneksi kita untuk menghubungkan aplikasi ke database yang dihosting ini.
‫Sekarang, jika Anda tidak menggunakan database yang dihosting
‫di Atlas, saya juga
‫akan menunjukkan cara menghubungkan database lokal
‫Anda dengan aplikasi nanti di video ini.
‫Bagaimanapun, cukup klik di sini di Hubungkan Aplikasi Anda dan
‫kemudian ini adalah string koneksi kami.
‫Pastikan Anda memilih Node.js. js di sini
‫sebenarnya karena string mungkin berubah berdasarkan itu.
‫Sekarang, kita juga membutuhkan versinya.
‫Dan, tentu saja, ini lebih dari pukul tiga.
‫Jadi, sekarang mari kita lanjutkan dan salin string koneksi kita
‫dan kemudian kembali ke aplikasi kita, kita
‫membuatnya sebagai variabel lingkungan di sini
‫di file konfigurasi kita.
‫Jadi, saya sudah punya DATABASE_PASSWORD.
‫Mari kita buat DATABASE sekarang.
‫Dan kemudian, letakkan tali kami di sini.
‫Sekarang, dua hal tentang string koneksi ini.
‫Pertama, di sini, di tempat ini, kita perlu memasukkan kata sandi kita.
‫Sekarang, kita dapat melanjutkan dan menyalin kata sandi dari sini
‫lalu menempelkannya di sini, tetapi saya
‫lebih suka membiarkannya dalam variabel terpisah dan
‫kemudian menggantinya dalam kode.
‫Saya hanya akan benar-benar mengubah kata sandi ini di sini
‫menjadi kata sandi huruf besar.
‫Jadi, PASSWORD untuk membuatnya sedikit lebih terlihat.
‫Kemudian, kedua, ini sebenarnya adalah host kami,
‫jadi pada dasarnya adalah tempat database di-host
‫dan kemudian /test.
‫Sekarang, tes ini di sini adalah nama database
‫yang ingin kita sambungkan.
‫Dan, dalam kasus kami, kami telah membuat database natours.
‫Mari kita periksa itu sebenarnya di sini di Kompas.
‫Dan, jika kita pergi ke KOLEKSI,
‫maka kita melihat bahwa di sini, kita sudah memiliki database natours kita.
‫Jadi, kami melakukannya pada akhir bagian terakhir.
‫Kamu ingat?
‫Jadi, sangat penting bahwa di
‫sini, dalam string koneksi ini, kami mengganti tes ini
‫dengan nama database kami.
‫Jadi, alam, oke?
‫Jadi, sangat penting di sini, sekali lagi,
‫jangan lupa untuk meletakkan ini di sini, jika tidak, itu
‫tidak akan berhasil.
‫Sekarang, jika Anda menggunakan database lokal seperti yang
‫baru saja saya sebutkan
‫sebelumnya, string koneksi ini jauh lebih mudah.
‫Jadi, mari
‫kita buat variabel untuk yang itu juga, DATABASE_LOCAL.
‫Tetapi, sekali lagi, jika Anda menggunakan string database ini di sini,
‫Anda tidak perlu khawatir tentang bagian ini.
‫Saya hanya melakukan
‫ini jika Anda menggunakan yang lokal.
‫Jadi, dalam hal ini, itu cukup sederhana.
‫Ini hanya mongodb dan ini semacam protokol di sini.
‫Jadi, alih-alih http, Mongo menggunakan ini seperti mongodb dan
‫protokol atau semacamnya.
‫Kemudian, localhost dan kemudian port,
‫yang telah kita
‫bicarakan beberapa kali dan itu 27017, ingat itu?
‫Dan kemudian, seperti sebelumnya,
‫kita juga perlu menentukan nama database,
‫yang seharusnya natours.
‫Nah, agar ini bisa
‫berjalan, tentunya Anda perlu menjaga server
‫MongoDB Anda agar proses Mongo D berjalan setiap saat.
‫Jadi, beralih ke terminal.
‫Jadi, proses lokal inilah yang saya maksud.
‫Jadi, jangan pernah menutup proses ini, jadi jendela terminal ini, saat
‫Anda bekerja dengan database lokal Anda.
‫Jadi, jika tidak, itu tidak akan berhasil.
‫Dan, itu saja untuk konfigurasi.
‫Selanjutnya, kita perlu menginstal driver MongoDB,
‫jadi pada dasarnya perangkat lunak yang memungkinkan kode
‫Node kita untuk mengakses dan berinteraksi dengan database MongoDB.
‫Dan, ada beberapa driver MongoDB yang berbeda, tetapi
‫kita akan menggunakan
‫salah satu yang menurut saya
‫paling populer, yang disebut Mongoose, yang menambahkan beberapa
‫fitur ke driver MongoDB yang lebih asli.
‫Tapi, jangan khawatir, di kuliah
‫berikutnya, Anda sebenarnya akan mempelajari semua tentang luwak
‫dan mengapa kami menggunakannya.
‫Untuk saat ini, mari kita lanjutkan dan menginstalnya.
‫Jadi, luwak, dan versi yang
‫akan saya gunakan adalah versi lima
‫jadi silakan lanjutkan dan instal versi lima juga sehingga kita
‫berada di halaman yang sama dengan kode kita di sini.
‫Jadi, pada saat Anda menonton video ini,
‫luwak enam, atau bahkan tujuh mungkin, mungkin sudah ada
‫di luar sana dan kemudian
‫sesuatu mungkin telah berubah
‫dan kemudian kode Anda mungkin tidak bekerja dengan cara yang sama persis.
‫Jadi, tolong instal saja versi lima karena itu
‫sebenarnya versi yang cukup stabil pada saat
‫ini dan saya tidak berpikir
‫bahwa mereka akan menambahkan banyak fitur penting di
‫masa depan.
‫Jadi, dalam paket kami. json, sekarang seharusnya ada di sini.
‫Jadi, 5. 5. 2, milik Anda mungkin sedikit
‫lebih lambat, tetapi itu seharusnya tidak menjadi masalah.
‫Mari kita pergi sekarang ke server. js di sini,
‫yang, ingat, adalah jenis file tempat
‫kita melakukan semua pengaturan aplikasi kita.
‫Misalnya, variabel lingkungan
‫atau aplikasi impor atau Express.
‫Dan, kami juga memulai server di sini.
‫Jadi, ini juga
‫file tempat kita akan mengkonfigurasi MongoDB.
‫Jadi, mari kita mulai dengan meminta paket luwak kami di sini.
‫Jadi, sekarang kita memiliki akses ke variabel
‫luwak dan di sana, kita cukup memanggil metode connect.
‫Sekarang, ke dalam metode koneksi ini, tentu
‫saja, kita perlu memasukkan string koneksi database kita.
‫Tapi, ingat, di sana, kita masih punya passwordnya.
‫Jadi, pada dasarnya placeholder kata sandi ini ada di sini.
‫Jadi, sebelum kita memasukkan string,
‫kita harus benar-benar menggantinya.
‫Jadi, ganti dengan kata sandi asli yang kita miliki di sini.
‫Jadi, ayo cepat lakukan itu.
‫Dan, saya hanya akan memanggil variabel ini DB untuk database.
‫Jadi, mari kita proses kita. lingkungan DATABASE.
‫Jadi, tentu saja, itu adalah variabel tempat string
‫disimpan di sini.
‫Jadi, kami mendapatkan itu dan kemudian menggantinya.
‫Dan, kami ingin mengganti PASSWORD.
‫Ini di sini berasal dari paket tag tutup HTML yang
‫saya miliki di Kode VS saya.
‫Jadi, proses. lingkungan DATABASE_PASSWORD.
‫Berikan simpanan.
‫Dan, oke, jadi itu masuk akal.
‫Jadi, kami hanya mengganti string placeholder
‫ini dengan kata sandi asli kami di string koneksi ini.
‫Jadi, sekarang kita bisa menggunakan variabel ini
‫di luwak kita. Menghubung().
‫Jadi, di sini, argumen pertama
‫sebenarnya adalah string koneksi itu, jadi DB.
‫Dan kemudian, kedua, kami memasukkan objek
‫dengan beberapa opsi dan ini hanya beberapa opsi
‫yang perlu kami tentukan untuk menangani beberapa peringatan penghentian.
‫Jadi, jangan terlalu khawatir tentang yang satu ini.
‫Jadi, gunakanNewUrlParser, setel ke true.
‫Kemudian, kita perlu menggunakan useCreateIndex, juga disetel
‫ke true.
‫Dan kemudian, gunakanFindAndModify dan setel
‫ke false.
‫Jadi, sekali lagi, ini hanya beberapa opsi
‫untuk menangani beberapa peringatan penghentian.
‫Jadi, saat Anda membuat aplikasi
‫Anda sendiri, lanjutkan dan gunakan yang persis sama.
‫Sekarang, metode connect ini di sini akan
‫mengembalikan janji dan jadi mari kita tangani janji itu dengan menggunakan then().
‫Dan, janji ini di sini benar-benar mendapatkan
‫akses ke objek koneksi.
‫Jadi, mari kita sebut saja con di sini untuk koneksi.
‫Jadi, pada dasarnya
‫hubungan ini akan menjadi nilai kesepakatan yang diselesaikan.
‫Jadi, hanya untuk menunjukkan bahwa kita benar-benar
‫terhubung, saya hanya ingin mencatat objek ini ke konsol.
‫Jadi, konsol. koneksi log dan sebenarnya
‫saya ingin melihat properti koneksi di sana.
‫Dan, kita juga
‫bisa masuk ke konsol seperti koneksi DB berhasil.
‫Berikan simpanan di sini.
‫Dan kemudian, tentu saja, ini menampilkan peringatan ini
‫di sini karena ESLint kami, tetapi jangan khawatir tentang itu.
‫Begitulah cara kami mengonfigurasinya.
‫Jadi, sekarang
‫mari kita lanjutkan dan benar-benar menjalankan aplikasi ini.
‫Sekarang, izinkan saya mengingat jenis skrip yang kita miliki.
‫Jadi, kita memiliki start:dev dan start:prod.
‫Sekarang, karena skrip kami di sini tidak
‫hanya disebut
‫start, yang merupakan semacam standar, kami selalu harus mengetik
‫npm run start:dev alih-alih menulis hanya npm start, tanpa run.
‫Jadi, izinkan saya melanjutkan
‫dan mengubah nama di sini kembali untuk memulai.
‫Dan kemudian, kita sudah mulai untuk produksi.
‫Jadi, npm mulai.
‫Aplikasi sedang berjalan sekarang.
‫Dan, memang, koneksi database kami berhasil.
‫Sangat bagus.
‫Dan sekarang, di sini kami memiliki objek koneksi kami
‫dan, seperti yang Anda lihat, ada banyak hal di
‫sini dan kami dapat melihat nama pengguna kami di sini, host,
‫kata sandi, tentu saja.
‫Dan, hal ini di sini tidak terlalu penting, tentu saja.
‫Saya hanya ingin login di
‫sini supaya kami melihat bahwa koneksi kami benar-benar berhasil.
‫Jadi, mari kita singkirkan itu.
‫Dan, kita sebenarnya bisa menyingkirkan semua ini di sini juga.
‫Jadi, ini hanya satu kalimat di sini.
‫Oh ya, hanya melewatkan tanda kurung ini.
‫Sekarang, di sini, dikatakan bahwa kita mendeklarasikan variabel ini, tetapi
‫tidak pernah menggunakannya, jadi mari kita singkirkan itu.
‫Sekarang, sebagai langkah terakhir,
‫izinkan saya menunjukkan kepada Anda bagaimana
‫kami juga dapat terhubung ke database
‫lokal, sekali lagi, jika Anda menggunakannya.
‫Jadi, mari kita gandakan baris ini, beri komentar.
‫Jadi, ini adalah versi database yang
‫di-host dan kemudian di sini kita hanya perlu memasukkan yang lokal.
‫Jadi, itu DATABASE_LOCAL.
‫Mari kita simpan.
‫Dan, kami juga berhasil terhubung dengan yang itu.
‫Jadi, begitulah cara Anda melakukannya dalam kasus itu.
‫Tapi, seperti yang saya katakan,
‫dalam kursus ini, kita benar-benar akan menggunakan yang
‫dihosting, jadi itulah yang saya simpan di sini.
‫Sebenarnya, saya menghapus yang ini.
‫Kami tidak membutuhkannya lagi.
‫Sekarang, tentu saja,
‫mungkin juga ada masalah saat menyambungkan ke database.
‫Misalnya, host mungkin sedang down atau
‫kami mungkin memiliki beberapa kesalahan dalam string koneksi kami
‫dan, dalam hal ini, kami harus menangkap kesalahan itu.
‫Tapi, kita akan meninggalkan penanganan
‫kesalahan sebentar lagi di kursus dan jadi
‫untuk saat ini, saya tidak memiliki metode tangkap apa pun di sini.
‫Hanya metode kemudian di
‫sini, dengan asumsi bahwa semuanya berfungsi dengan baik.
‫Dan, sekarang akhirnya, saya ingin benar-benar
‫melanjutkan dan menghapus
‫koleksi yang telah kita buat di
‫database kita hanya agar driver Mongoose kita tidak mengganggu
‫itu dengan cara apa pun sehingga tidak ada masalah di sana.
‫Jadi, mari kita kembali ke Atlas di sini.
‫Kunjungi KOLEKSI kami.
‫Dan kemudian, cukup hapus koleksi dari sini.
‫Dan sekarang, kita perlu memasukkan nama koleksi di sini
‫agar kita tidak melakukan kesalahan di sini.
‫Jadi, jatuhkan dan, baiklah.
‫Jadi, sekarang kami memiliki database
‫kosong di sini, siap untuk mulai mengisi data kami mulai
‫dari beberapa video berikutnya.