所以在我的项目中,我正在尝试将时间戳发送到我的firestore数据库。当我在我的python代码中测试我的日期时间时,它会给我正确的日期和时间,在将数据发送到firestore之后,数据库中的时间戳数据总是距离当前时间+8小时
从2018-05-20 07:11:19.833275到2018-05-20 15:11:19.833275
其他一切都是正确的,甚至是时区,只是在一小时之外。我们所在的时区btw是UTC + 8。 我不明白我做错了什么。
这是我的代码:
import firebase_admin
from firebase_admin import credentials
from google.cloud import firestore
from firebase_admin import firestore
import datetime, sys
now = datetime.datetime.now()
# Use a service account
cred = credentials.Certificate('*some key*')
firebase_admin.initialize_app(cred)
db = firestore.client()
path = db.collection("*somepath*")
doc_ref = path.document()
doc_ref.set({
'date': now,
'rate': 60,
'used': 1
})
print ("current: %s" %now)
答案 0 :(得分:0)
要获得更一致的时间戳,请考虑使用Firestore SERVER_TIMESTAMP
常量:
doc_ref.set({
'date': firestore.SERVER_TIMESTAMP,
'rate': 60,
'used': 1
})
https://google-cloud-python.readthedocs.io/en/latest/firestore/constants.html
如果需要,您可以转换时间戳客户端。