Я хочу получить Posts
, которые создаются в течение 24 часов в парусах js. И я использую базу данных mongodb
. Как получить все сообщения, созданные за последние 24 часа.получить записи, созданные в течение 24 часов в парусах js
2
A
ответ
2
Вы можете создать диапазон дат, который состоит из 24 часов следующим образом.
Используя momentjs библиотеку, вы можете создать дату с помощью методов расширения subtract()
и брось в Date JS с помощью метода toDate()
:
var start = moment().subtract(24, 'hours').toDate();
или с простыми ваниль Дата объектов, создать диапазон дат, как:
var now = new Date(),
start = new Date(now.getTime() - (24 * 60 * 60 * 1000));
Используйте where()
способ использовать запрос на Posts
модель с использованием вышеуказанного запроса диапазона дат, учитывая поле, которое имеет метку времени, называется date
:
Posts.find()
.where({ "date" : { ">": start } })
.exec(function (err, posts) {
if (err) throw err;
return res.json(posts);
});
'' '«<»: end''' не требуется, поскольку не будет записей, созданных в будущем. Это сделало бы смысл, если вы хотите делать записи от -48 до -24 часов. Но не от -24 до 0. – Bonanza
@Bonanza. Вы правы, глупый из меня. Я предполагал, что будут поставлены сообщения, которые будут автоматически публиковаться для данной даты в будущем: P Но потом OP никогда не упоминал об этом. – chridam
Я не думал о авто-публикации. :) – Bonanza