最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

有没有办法在mongodb中过期日期时更新文档?

运维笔记admin8浏览0评论

有没有办法在mongodb中过期日期时更新文档?

有没有办法在mongodb中过期日期时更新文档?

我已经阅读了一些解决方案,并想知道如果日期在2天后过期,我是否可以更新(不删除)mongodb中的文档。像这样。

date:2019-02-15
status:not expired

2天后将状态更新为expired。这是我发布文档的代码。

var bloodstock = new Bloodstock(); 
bloodstock.date = new Date();
bloodstock.status = "not expired"; 
bloodstock.save(function(err) {});
回答如下:

每天午夜运行cron来比较日期。如果日期存在2天,则更新数据库上的状态。

var CronJob = require('cron').CronJob;
const job = new CronJob('00 00 00 * * *', function () {
    if (Date.parse(today_date) > Date.parse(new Date(db_date).getTime() + (2 * 24 * 60 * 60 * 1000))) {
        //Update your status
        ...
    }
});
job.start();

注意:可以在MongoDB查询或Javascript上进行日期比较,这取决于您需要更新的文档大小。

发布评论

评论列表(0)

  1. 暂无评论