Meteor / mongo获取一个月前创建的记录

时间:2015-11-17 15:53:21

标签: javascript mongodb meteor momentjs

我如何从一个月前创建的集合中获取记录 moment.js 返回所有记录的计数。

我的收藏代码是:

Products.find() // where start and end date is one month ago and  products is the collection

这可能是一个愚蠢的问题,但是,当我从铁路到javascript / meteor时,一点点帮助都会没问题。

示例文档

 {
        "_id": "xxx",
        "name": "xxx",
        "description": "xxx",
        "createdAt": "2015-04-18T04:40:00Z",
        "productType": "Flavoured Milk",
        "opt1": "Packaging",
        "opt2": "Weight",
        "supplier": "xxx",
        "brand": "xxx"
        "status": "active",
        "tags": ["xxx","xxx"],
        "updatedAt": "2015-04-18T04:40:00Z"
    }

2 个答案:

答案 0 :(得分:1)

您可以通过以下方式获取一个月前的Date对象:

moment().subtract(1, "months").toDate();

我假设您在createdAt集合中有字段Products。因此,查找在一个月前创建的所有产品的查询将是:

var oneMonthAgo = moment().subtract('months', 1).toDate();

Products.find({ createdAt: oneMonthAgo })

但请记住,上述解决方案只会返回一个月前完全 准确到第二时创建的记录。

答案 1 :(得分:1)

Uchenna,

Moment.js 2.8.0你可以这样做:

var comparison = moment().subtract(1, 'months').toDate();

Products.find({ createdAt: comparison });

根据文件:

  

在2.8.0版本之前,#subtract(String,Number)语法的时刻是   也支持。它已被弃用赞成   moment#subtract(Number,String)。