Buka file routes/mahasiswa.js
Tambahkan router dengan method PUT pada routes/mahasiswa.js
// Update
router.put('/:mahasiswaId', async(req, res) => {
// tampung input mahasiswa
const data = {
nama: req.body.nama,
alamat: req.body.alamat
}
try {
// update data
const mahasiswa = await Mahasiswa.updateOne({_id: req.params.mahasiswaId}, data)
// response
res.json(mahasiswa)
} catch (error) {
res.json({message: error})
}
})
:mahasiswaId merupakan parameter untuk menampung data parameter yang dikirimkan dari POSTMAN / Web FrontEnd
req.body.nama dan req.body.alamat merupakan data yang dikirimkan dari Body POSTMAN / Web FrontEnd
req.params.mahasiswaId untuk mengakses value dari parameter :mahasiswaId
Mahasiswa.updateOne untuk memperbarui Document yang ada di Collection Mahasiswa berdasarkan filter _id
Berikut isi file mahasiswa.js setelah ditambahkan router PUT
// (5) Buat router Mahasiswa
const express = require('express')
const router = express.Router()
const Mahasiswa = require('../models/Mahasiswa')
// Create
router.post('/', async(req, res) => {
// tampung input mahasiswa
const mahasiswaPost = new Mahasiswa({
nama: req.body.nama,
alamat: req.body.alamat
})
try {
// simpan data
const mahasiswa = await mahasiswaPost.save()
// response
res.json(mahasiswa)
} catch (error) {
res.json({message: error})
}
})
// Read
router.get('/', async(req, res) => {
try {
const mahasiswa = await Mahasiswa.find()
res.json(mahasiswa)
} catch (error) {
res.json({message: error})
}
})
// Update
router.put('/:mahasiswaId', async(req, res) => {
// tampung input mahasiswa
const data = {
nama: req.body.nama,
alamat: req.body.alamat
}
try {
// update data
const mahasiswa = await Mahasiswa.updateOne({_id: req.params.mahasiswaId}, data)
// response
res.json(mahasiswa)
} catch (error) {
res.json({message: error})
}
})
module.exports = router
Tes API PUT Mahasiswa menggunakan POSTMAN, tambahkan value _id pada Endpoint URL mahasiswa
"modifiedCount" : 1 pada response API PUT menunjukkan bahwa data mahasiswa berhasil diupdate.
Tes API GET menggunakan POSTMAN untuk melihat perubahan data mahasiswa setelah dilakukan API PUT
Data mahasiswa dengan _id : 6382e3ce4fccb36549001e15 berubah menjadi nama : Arif dan alamat : Jl sudirman