Considere el siguiente esquema:
var AdminSchema = new Schema({ username: { type: String, required: 'Kindly enter your username' }, password: { type: String, required: 'Kindly enter your username' }, countries: { type: [String] } }); ¿Cuál es la forma correcta de verificar si una cadena está disponible en la variable de países de un objeto con un nombre de usuario y contraseña dados y devolver una respuesta que dice si hay un error de autenticación o si el país no está en la matriz?
Mi enfoque está a continuación, pero no creo que sea bueno debido a la verificación manual de la matriz si contiene el país:
// u: username, p: password, c: country Admin.findOne({username: u}, {}, function(err,admin){ if (err){ console.log(err); return; } if (admin.password !== p){ console.log('wrong password'); return; } if (!admin.conutries.includes(c)){ console.log('country not included'); return; } // do other stufff });