¿Cómo crear tipos de datos personalizados en Mongoose?
Mongoose permite definir getters y setters así como valores default en los esquemas. Lo mismo para validar y otros métodos útiles.
const postSchema = new mongoose.Schema({
slug: {
type: String,
set: function (slug) {
return slug.toLowerCase();
},
},
numeroDeLikes: {
type: Number,
get: function (value) {
return `${value} likes`;
},
},
creadoEn: {
type: String,
get: function (value) {
if (!value) return null;
return value.toUTCString();
},
},
});