我正在尝试使用Python创建一个session_expiry时间,然后使用insert_one()方法将session_expiry插入mongo db中。
将数据插入 mongodb 后,在查询 mongo shell 时,我将获取字符串格式的日期。
这就是它的存储方式 -
"session_expiry" : "2023-06-23T19:55:41.551199"
但我希望它以 ISO 格式存储,如下日期 -
"session_expiry" : ISODate("2023-06-23T13:44:53.740Z")
import datetime
session_expiry = datetime.datetime.utcnow() + datetime.timedelta(minutes=90)
session_expiry的类型是datetime.datetime`
`In [2]: session_expiry = datetime.datetime.utcnow() + datetime.timedelta(minutes=90)
In [3]: session_expiry
Out[3]: datetime.datetime(2023, 6, 23, 21, 55, 49, 2328)
In [4]: type(session_expiry)
Out[4]: datetime.datetime`
蟒蛇:
import datetime
import pymongo
db = pymongo.MongoClient()['test']
session_expiry = datetime.datetime.utcnow() + datetime.timedelta(minutes=90)
db['mycollection'].insert_one({'session_expiry': session_expiry})
蒙戈什:
test> db.mycollection.findOne()
{
_id: ObjectId("64962241fa935efe824f5d07"),
session_expiry: ISODate("2023-06-24T00:22:49.372Z")
}
在 mongoengine 中存储日期时间。你用
DateTimeField
示例:
from mongoengine import *
import datetime
class Token(Document):
session_expiry = DateTimeField(default=datetime.datetime.utcnow() + datetime.timedelta(minutes=90))