mongoose.js:按天查找数据条目

假设这是你的模型:

var EventSchema = new Schema({ title: String, startDate: Date, endDate: Date }); 

我想要投入一个date(像“24-12-2012”一样简单),然后检索每一天在这一天开始或进行的事件。

你是怎样做的?

当然:

首先阅读有关date的mongo查询语法,下面是date范围的一个操作方法: http : //cookbook.mongodb.org/patterns/date_range/

然后把这个mongo语法翻译成mongoose。

 Event.where('startDate').lte(yourDate).exec(callback); //should do the trick 

现在你只需要将datestringparsing为javascriptdate。 有一些很酷的库可以做到这一点,我相信,这个datestring的moment.js不会有问题。

哦,我忘记了最后一点魔法:把这个查询放到一个静态方法附加到你的事件模型,所以从现在开始,你可以调用

 Event.earlierThan(yourDate, callback); //Where your custom static is called 'earlierThan'.