假设这是您的模型:
var EventSchema = new Schema({
title: String,
startDate: Date,
endDate: Date
});
我想输入一个日期(就像“24-12-2012”一样简单),然后检索在那一天开始或进行的每个事件。
你是怎样做的?
当然:
首先阅读日期的 mongo 查询语法,这是日期范围的操作方法:http: //cookbook.mongodb.org/patterns/date_range/
然后将该 mongo 语法翻译成 mongoose。
Event.where('startDate').lte(yourDate).exec(callback); //should do the trick
现在您只需要将日期字符串解析为 javascript 日期。有一些很酷的库可以做到这一点,我相信moment.js不会对那个日期字符串有问题。
哦,我忘了最后一点魔法:将该查询放入附加到您的事件模型的静态方法中,所以从现在开始您可以调用
Event.earlierThan(yourDate, callback); //Where your custom static is called 'earlierThan'.