2011-10-03 62 views
3

我:如何使用Node.js和Mongoose查询日期?

dates = {} 
    today = new Date() 
    todayminus7days = new Date(today).setDate(today.getDate()-7) 
    dates.startDate = todayminus7days 
    dates.endDate = today 

    query = 
     person_gender: filter.gender if filter.gender 
     person_age: 
     0: 
      $gte: dates.startDate 
     1: 
      $lte: dates.endDate 

然而,当我经历了猫鼬模型运行此查询,最终的查询是:

{ person_gender: 'female', 
    person_age: 
    { '0': { '$gte': 1317055089524 }, 
    '1': { '$lte': Mon, 03 Oct 2011 16:38:09 GMT } } } 

和它返回日期范围内空的结果。

那么我怎样才能通过日期到猫鼬呢?

回答

6

这里的问题不是MongoDB或Mongoose相关,但在你的假设.setDate()返回一个日期(它没有)。

如果你改变你的初始化代码:

... 
todayminus7days = new Date(today); 
todayminus7days.setDate(-7); 
...

预期它应该工作。