För att få inlägg skapade under de senaste 24 timmarna kan du få aktuell tid, subtrahera 24 timmar och få värdet av startdatumet att använda i din datumintervallfråga:
var start = new Date(new Date().getTime() - (24 * 60 * 60 * 1000));
Post.find({ "created_at": { "$gte": start } }).exec(callback);
Om du vill veta mer om $gte
, kolla följande artikel:
Med momentjs bibliotek detta kan vara enkelt
var start = moment().subtract(24, 'hours').toDate();
Post.find({ "created_at": { "$gte": start } }).exec(callback);
Du kan också definiera ett datum standard med en funktion istället för 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"}
});