Quiero actualizar la fecha actual en formato aaaa-mm-dd para poder consultarla más tarde, pero no puedo insertar la fecha en el formato requerido. Esto es lo que hice hasta
const sampleSchema = new mongoose.Schema({ username:String, date:{ type:Date } }); const Sample = new mongoose.model("Sample", sampleSchema); let currentDate=new Date const sample = new Sample({ username:req.body.username, date:currentDate.toISOString().split("T")[0] }); sample.save()estoy recibiendo esto
{ "_id": { "$oid": "61b5862c6ff7ff297ae97d0c" }, "user": "username", "date": { "$date": "2021-12-12T00:00:00.000Z" }, "__v": 0 }Quiero la fecha en formato aaaa-mm-dd.
Use moment.js para convertir la fecha con formato ISO en una fecha con formato normal AAAA-MM-DD No intente almacenar su propio formato de fecha en MongoDB porque crea problemas al consultar datos en función de la fecha y la hora. Así que actualícelo a ISO y luego conviértalo a un formato diferente en el backend
Convertir la fecha del formato ISO en AAAA MM DD
date = new Date('2013-08-03T02:00:00Z'); date = moment(date).format('YYYY MM DD'); //result 2013 08 03Conversión de formato AAAA MM DD a formato IOS
date = new Date('2013-08-03'); date = moment(date).format();Otra cosa que los usuarios pueden hacer es almacenar datos en forma de cadena y usar los operadores $gt, $gte, $lte y $lt para las consultas.