当日期过期时,从mongodb集合中删除数据

时间:2018-03-21 15:39:37

标签: node.js mongodb triggers

我有一个包含用户会话的集合,它有一个字段到期日期。我在MongoDB中寻找类似触发器的触发器,当任何记录日期到期时触发,我可以删除该记录。

这是我的收藏品的样子

{
 _id:"123",
 sessionId:"dummy",
 token:"asdasd",
 deviceId:"123213",
 expiryDate:"date"
}

1 个答案:

答案 0 :(得分:1)

假设expiryDate是实际的Date类型而不是字符串,您可以使用TTL index来执行此操作。

db.mycoll.createIndex({expiryDate: 1}, {expireAfterseconds: 0})

一旦当前时间大于expiryDate,将指示MongoDB自动从集合中删除文档。