web-dev-qa-db-fra.com

ISODate n'est pas défini

J'essaie d'obtenir des résultats de Mongodb en utilisant nodejs/mangouste.

var dateStr = new Date(year,month,day,0,0,0);
var nextDate = new Date(year,month,day,23,59,59);

GPSData.find({"createdAt" : { $gte : new ISODate(dateStr), $lte:  new ISODate(nextDate) }}, function(err, data) {
  if(err)
    console.log(err); 
});

Erreur: ISODate is not defined

23
coure2011

Notez que ISODate fait partie de MongoDB et n'est pas disponible dans votre cas. Utilisez plutôt Date et les pilotes MongoDB (par exemple, l'ORM Mongoose que vous utilisez actuellement) se chargeront de la conversion de type entre Date et ISODate en coulisse.

44
qiao

Vous pouvez simplement utiliser ce qui suit pour convertir des dates en chaîne ISO:

GPSData.find({"createdAt" : { $gte : new Date(year,month,day,0,0,0).toISOString(), $lte:  new Date(year,month,day,23,59,59).toISOString() }}, function(err, data) {
  if(err)
    console.log(err); 
});
1
Jitendra