mongodb TTL不会过期nodejs

时间:2018-10-23 16:46:28

标签: node.js mongodb ttl

我正在尝试将自动过期键值的数据添加到我的mongo数据库中。 我使用mongo 3.1.3。  我看到我的数据被添加到mlab上,但是它没有过期。我究竟做错了什么?我已经搜索了20个差异页面,似乎没有人显示一种非猫鼬方法,该方法显示添加的集合中不仅包含“ createdAt”键值,如果我无法添加自己的键值对,那对我来说毫无意义。 >

db.collection("myCol")
    .insertOne({
        "mykey": "myvalue"
    }, function (err, response) {
        return res.status(200).send("done")
    })
return db.collection("myCol")
    .createIndex({ "createdAt": 1 }, { expireAfterSeconds: 60 })

[编辑] 60秒后删除“ myCol”的正确格式是什么?

db.collection("myCol") .createIndex({ "createdAt": 1 }, { expireAfterSeconds: 60 }) .insertOne({ "mykey": "myvalue" }, function (err, response) { return res.status(200).send("done") })
无效。

当您说“具有匹配的Date值的索引字段。” ...是指...

`db.collection("myCol")
    .insertOne({
        "mykey": "myvalue"
        "date": new Date()
    }, function (err, response) {
        return res.status(200).send("done")
    })
db.collection("myCol")
    .createIndex({ "createdAt": 1,  "date": new Date() }, { expireAfterSeconds: 60 })`   

这也是无效的。我只需要一个例子。 docs arent clear要么

0 个答案:

没有答案