Untuk delete, digunakan method findByIdAndDelete(), parameter yang dibutuhkan adalah id. Berikut codenya
exports.deleteTour = async (req, res)=> {
try{
await Tour.findByIdAndDelete(req.params.id);
res.status(204).json({
status: 'success',
data: null
});
}catch(err){
res.status(400).json({
status: 'fail',
message: 'Delete fail'
});
}
}
Buka aplikasi Postman, pilih method Delete, masukan URL 127.0.0.1:3000/api/v1/tours/5fbe243f82fa8b5cb484c78b (perhatian, masukan ID sesuai data yang Anda miliki). Lalu tekan Send.
Bila berhasil, response body akan kosong, status code adalah 204.
Berikut isi lengkap tourController.js
const Tour = require('./../models/tourModel');
exports.getAllTours = async (req, res) => {
try{
const tours = await Tour.find();
res.status(200).json({
status: 'success',
results: tours.length ,
data: {
tours: tours
}
});
}catch (err){
res.status(400).json({
status: 'fail',
message: 'Not Found'
});
}
}
exports.getTours = async (req, res) => {
try{
const tour = await Tour.findById(req.params.id);
res.status(200).json({
status: 'success',
data: {
tour: tour
}
});
}catch(err){
res.status(400).json({
status: 'fail',
message: 'No Data Found'
});
}
}
exports.createTour = async (req, res) => {
try{
const newTour = await Tour.create(req.body);
res.status(201).json({
status: 'success',
data: {
tour: newTour
}
});
} catch (err){
res.status(400).json({
status: 'fail',
message: 'Error insert data'
});
}
}
exports.updateTour = async (req, res)=> {
try{
const tour = await Tour.findByIdAndUpdate(req.params.id, req.body, {
new: true, runValidators: true
});
res.status(201).json({
status: 'success',
data: {
tour: tour
}
});
}catch(err){
res.status(400).json({
status: 'fail',
message: 'error update'
});
}
}
exports.deleteTour = async (req, res)=> {
try{
await Tour.findByIdAndDelete(req.params.id);
res.status(204).json({
status: 'success',
data: null
});
}catch(err){
res.status(400).json({
status: 'fail',
message: 'Delete fail'
});
}
}
Sampai disini kita sudah mempelajari operasi CRUD document mongoDB. Semoga tutorial ini bermanfaat.