Meteor/mongo получает записи, созданные месяц назад
Как получить записи из моей коллекции, созданной месяц назад с помощью 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 ответа
Вы можете получить объект Date месяца назад:
moment().subtract(1, "months").toDate();
Я предполагаю, что у вас есть поле createdAt
на Products
коллекция. Таким образом, запрос для поиска всех продуктов, созданных месяц назад, будет:
var oneMonthAgo = moment().subtract('months', 1).toDate();
Products.find({ createdAt: oneMonthAgo })
Но имейте в виду, что приведенное выше решение вернет только те записи, которые были созданы ровно месяц назад с точностью до секунды.
Uchenna,
В Moment.js 2.8.0
Вы могли бы сделать что-то такое:
var comparison = moment().subtract(1, 'months').toDate();
Products.find({ createdAt: comparison });
Согласно документам:
До версии 2.8.0 также поддерживался синтаксис момента # вычитания (String, Number). Это устарело в пользу момента # вычитания (число, строка).