Saya ingin dapat merutekan ulang pengguna situs web jika terjadi kesalahan saat menambahkan sesuatu ke database (kesalahan validasi sisi server, seperti string yang berisi simbol non alfanumerik atau semacamnya). Saat ini blok try-catch tidak menangkap apa pun meskipun model.create() gagal. Bagaimana saya bisa menulis ulang ini untuk keluar dari blok percobaan dan merutekan ulang kembali ke '/' jika entri yang dicoba tidak valid? Ini yang saya punya (btw, Request dan Ride1 adalah nama modelnya):
/* POST request */
router.post('/', function(req, res, next){
/*a bunch of variable initializations to get form data*/
try{
Request.create({
serial_num: serial_num,
meter_reading: meter_reading,
request_type: request_type
})
.catch(err => {
throw err
})
Ride1.create({
serial_num: serial_num,
meter_reading: meter_reading,
request_type: request_type
})
.catch(err => {
throw err
})
res.redirect('/thankYou')
}
catch (e){
console.log(e);
res.redirect('/');
}
});
Hal .catch(err =>...) sepertinya tidak menghasilkan apa-apa dan hanya upaya lemah untuk membuat ini berfungsi. Saya rasa saya bisa melakukannya jika saya tidak memerlukannya. Saran apa pun sangat kami hargai.