Python 如何使用pymongo设置数据过期时间

Python 如何使用pymongo设置数据过期时间,python,mongodb,pymongo,Python,Mongodb,Pymongo,如何使用pymongo设置数据过期时间?我需要设置一些重要文档的过期时间,所以我可能会使用db.collection.create_index([('expireAt',1)],expireAfterSeconds=0)。这意味着我应该将expireAt的值设置为与文档应该过期的时间相对应。我更喜欢使用mongodb服务器时间而不是本地机器时间(用户可以更改他们的机器时间) 如何使用pymongo执行 newDate (new Date(now.getTime()+60000)) 与mongo

如何使用pymongo设置数据过期时间?我需要设置一些重要文档的过期时间,所以我可能会使用
db.collection.create_index([('expireAt',1)],expireAfterSeconds=0)
。这意味着我应该将
expireAt
的值设置为与文档应该过期的时间相对应。我更喜欢使用
mongodb
服务器时间而不是本地机器时间(用户可以更改他们的机器时间)

如何使用
pymongo
执行

newDate (new Date(now.getTime()+60000))

与mongoDB类似,您可以使用两种机制要求Mongo删除过期文档:

  • 在指定的秒数后使文档过期
  • 在特定时钟时间使文档过期
在您的问题中,您似乎希望使用“在特定的时钟时间使文档过期”,但是,您试图给出当前时间+x秒。如果这是您想要的,您应该使用“在指定的秒数后使文档过期”机制

在指定时钟时间过期文档的示例:

db.log_events.createIndex( { "expireAt": 1 }, { expireAfterSeconds: 0 } )
db.log_events.insert( {
   "expireAt": new Date('July 22, 2013 14:00:00'),
   "logEvent": 2,
   "logMessage": "Success!"
} )
指定秒数后过期文档的示例

db.log_events.createIndex( { "createdAt": 1 }, { expireAfterSeconds: 3600 } )
db.log_events.insert( {
   "createdAt": new Date(),
   "logEvent": 2,
   "logMessage": "Success!"
} )
有关更多信息,请访问:

谢谢你的回答。我想使用“特定时间的过期文档”,因为过期秒是可变的,可能是60s、1h等。我希望你得到了你需要的信息。如果答案对你有帮助,请考虑支持和接受答案。谢谢问题是关于使用pymongo的,但您的答案是JavaScript