【发布时间】:2016-06-24 13:20:30
【问题描述】:
我想获取在sails js 中24 小时内创建的Posts。我正在使用mongodb 数据库。我如何获得过去 24 小时内创建的所有帖子。
【问题讨论】:
标签: mongodb sails.js sails-mongo
我想获取在sails js 中24 小时内创建的Posts。我正在使用mongodb 数据库。我如何获得过去 24 小时内创建的所有帖子。
【问题讨论】:
标签: mongodb sails.js sails-mongo
您可以通过以下方式创建包含 24 小时的日期范围。
使用 momentjs 库,您可以使用扩展方法 subtract() 创建日期并使用 toDate() 方法将其转换为 JS 日期: p>
var start = moment().subtract(24, 'hours').toDate();
或使用普通的 Date 对象,将日期范围创建为:
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。