我正在使用python 3.6.7将一些对象存储到MongoDB。 在存储对象之前,先设置创建时间戳记
obj['_objCreated'] = datetime.datetime.utcnow()
但是,现在我要删除旧条目(超过1天)
keepThreshold = datetime.datetime.utcnow() - datetime.timedelta(days=1)
cursor = self.weeklyPrices.remove( {'_objCreated': {'$lt': {keepThreshold}}})
执行此代码会导致以下错误:
bson.errors.InvalidDocument: Cannot encode object: {datetime.datetime(2019, 2, 16, 14, 24, 46, 598968)}
有人可以提示我为什么吗? 我的第一个猜测是也许微秒无法编码,所以我将其设置为0
keepThreshold = keepThreshold.replace(microsecond=0)
不能解决错误。