Tengo un esquema de mangosta con una función getter para una de las propiedades, por ejemplo:
const User = new mongoose.Schema( { active: Boolean, email: {type: String, get: toLowerCase} } )y toLowerCase se define como:
function toLowerCase(str) { return str.toLowerCase() }Cuando realizo User.findOne(), un objeto de ejemplo devuelto parece
// user { active: true, email: "LowerCase@gmail.com" // note: not lower-cased }PERO si accede a la propiedad de correo electrónico con el mismo objeto con user.email, devuelve lowercase@gmail.com
user.email // lowercase@gmail.com¿Hay alguna manera de que mongo devuelva directamente el valor del captador ejecutado?
De forma predeterminada, Mongoose ejecuta captadores al convertir un documento a JSON. Eso significa que el campo de email en el resultado de User.findOne() no estará en minúsculas. Pero, en el momento en que envíe sus datos con res.json() , se ejecutará getter y el campo de email se establecerá en minúsculas.