Langkah pertama, install dahulu package mongoose, library untuk mongodb. Digunakan mongoose memiliki fitur lebih banyak dibanding native library dari mongodb.
Mongoose adalah Data Object Modeling library untuk mongodb dan node.js, memungkinkan kita mengakses mongodb dalam Bahasa Javascript dengan lebih mudah dan cepat.
Berikut beberapa fitur penting dari mongoose:
- Akses terhadap schema untuk model data dan relationship.
- Mempermudah data validation
- Query API yang lebih simple
- Middleware
Tutorial menggunakan mongoose versi 5, silakan install versi yang sama agar bisa mengikuti tutorial ini tanpa ada masalah. Gunakan perintah berikut untuk install mongoose versi 5.
npm i mongoose@5
Setelah instalasi selesai, buka file server.js (file yang digunakan adalah file akhir dari tutorial sebelumnya. Silakan download di https://skillplus.web.id/kesimpulan/ jika belum ada)
Data yang dibutuhkan adalah connection string yang sudah dibuat pada modul sebelumnya. Berikut kode untuk melakukan koneksi ke mongodb.
Perhatian: Gunakan connection string yang Anda buat pada tutorial sebelumnya, jangan gunakan connection string pada contoh code.
const mongoose = require('mongoose');
const db = 'mongodb+srv://<ISI_USERNAME>:<ISI_PASSWORD>@cluster0.x6e8z.mongodb.net/<ISI_DBNAME>?retryWrites=true&w=majority';
mongoose.connect(db, {
useNewUrlParser: true,
useCreateIndex: true,
useUnifiedTopology: true,
useFindAndModify: false
}).then(con => {
console.log('DB Connected');
});
Pertama kita load library mongoose, lalu definisikan connection string pada variable db.
Gunakan perintah mongoose.connect() untuk membuka koneksi ke server. Parameter yang tertera dalam code adalah parameter default yang harus diisi.
Silakan jalankan aplikasi node.js Anda, jika semuanya berjalan lancar, maka pada console akan tampil tulisan DB Connected.
Berikut isi lengkap file server.js
const mongoose = require('mongoose'); const app = require('./app'); const db = 'mongodb+srv://<USERNAME>:<PASSWORD>@cluster0.x6e8z.mongodb.net/<ISI_DBNAME>?retryWrites=true&w=majority'; mongoose.connect(db, { useNewUrlParser: true, useCreateIndex: true, useUnifiedTopology: true, useFindAndModify: false }).then(con => { console.log('DB Connected'); }); const port = 3000; app.listen(port, ()=>{ console.log(`Listening on port ${port}...`); });