For at få oprettet indlæg inden for de sidste 24 timer kan du få det aktuelle tidspunkt, trække 24 timer fra og få værdien af startdatoen til brug i din datointervalforespørgsel:
var start = new Date(new Date().getTime() - (24 * 60 * 60 * 1000));
Post.find({ "created_at": { "$gte": start } }).exec(callback);
Hvis du vil vide mere om $gte
, tjek følgende artikel:
Med momentjs bibliotek dette kan være enkelt
var start = moment().subtract(24, 'hours').toDate();
Post.find({ "created_at": { "$gte": start } }).exec(callback);
Du kan også definere en dato standard med en funktion i stedet for pre hook middleware:
var post = new mongoose.Schema({
text : String,
created_at : {type : Date, default: Date.now, index : true},
pos : {latitude: Number, longitude: Number},
created_by : {type : Schema.Types.ObjectId, ref : "UserSchema"}
});