He creado un formulario de registro utilizando mangosta y expresar 3cómo recuperarse de clave duplicada en mangosta + expresan
Su posible que el usuario ya existe con ese nombre de usuario, en cuyo caso me sale un err.code 11000 (llave duplicada). ¿Cómo debo manejar a los usuarios existentes?
Esto es lo que estoy haciendo ahora .... pero no estoy seguro de código de comprobación de error es de mejor manera:
user.save(function(err){
if (err) {
console.log(err);
console.log(err.code);
//duplicate key
if (err.code == 11000) {
req.flash('error', 'User already exists');
res.redirect('/signup');
return;
}
}
res.locals.user = user;
req.session.user = user;
//res.locals.session = req.session;
res.redirect('/');
});
¿Hay una mejor manera de hacer esto?
se ve bastante limpio. ¿Qué cosa en particular no te parece bien? – JohnnyHK
Solo el hecho de que dejo que el db arroje un error en lugar de buscar primero al usuario. – chovy
Depende de qué haría que otra solución sea "una mejor manera" en su situación. ¿No intenta ser difícil, pero si esto es funcionalmente correcto y su rendimiento es adecuado y es mantenible ...? – JohnnyHK