Ich benutze Node.js und Express auf einem Webserver, um MongoDB auf einem Dbserver abzufragen und in ein Problem zu geraten, die Daten zusammenzuarbeiten, ich habe gelesen Bündel von Threads hier über das Problem, vor allem diese:Suche nach ISODate mit Node.js, Express und MongoDB
Inserting and Querying Date with MongoDB and Nodejs
ich bin mir ziemlich sicher, dass ich verstehe, was ich tue werden soll, aber nichts, was ich scheint versuchen zu arbeiten. erwarten
var todayStart = new Date();
todayStart.setSeconds(0);
todayStart.setHours(0);
todayStart.setMinutes(0);
todayStart.setMilliseconds(0);
var todayEnd = new Date(todayStart);
todayEnd.setHours(23);
todayEnd.setMinutes(59);
todayEnd.setSeconds(59);
todayEnd.setMilliseconds(999);
var query = {
"date": {
$gte: new Date(todayStart).toISOString(),
$lte: new Date(todayEnd).toISOString()
}
};
Meine Anfrage var auf der Konsole im Format I:
In meinem JS-Datei, ich habe folgendes
{ date:
{ '$gte': '2016-09-13T00:00:00.000Z',
'$lte': '2016-09-13T23:59:59.999Z' }
}
ich versuche, entweder meine Abfrage Variable zu verwenden oder das Datum vars selbst, und beide geben ein Ergebnis von Null (keine Fehler) zurück:
db.collection('test').findOne(query, function(err, result) {
db.collection('test').findOne({"date" : {$gte: new Date(todayStart).toISOString(),$lte: new Date(todayEnd).toISOString() }}, function(err, result) {
Allerdings wenn ich nur p lug in meine Daten wie folgt, es gibt mein Ergebnis zurück:
db.collection('test').findOne({"date" : {$gte: new Date("2016-09-13T00:00:00.000Z"),$lte: new Date("2016-09-13T23:59:59.999Z") }}, function(err, result) {
Eine Idee, was ich hier fehlt?
Dank einer Tonne. Ich habe es eindeutig überkompensiert. Lief wie am Schnürchen. –
@NickSchroeder Keine Sorge, gerne helfen – chridam