数据存储异步写入操作,不保存
Datastore Asynchronous Write Operation, not saving
正在尝试将数据写入我的本地数据存储,例如:
drivingJson = json.loads(drivingdata)
for data in drivingJson:
keys = getKey()
index = 1
dataList = list()
for nodeData in data:
self.response.write(keys)
self.response.write("<br>")
lat = nodeData['lat']
lng = nodeData['long']
color = nodeData['color']
timestamp = datetime.datetime.strptime(nodeData['timestamp'], "%Y-%m-%d %H:%M:%S")
saveDrivingData = DrivingObject(
index = index,
lat = float(lat),
lng = float(lng),
timestamp = timestamp,
sessionKey = str(keys),
color = int(color)
)
dataList.append(saveDrivingData)
index +=1
ndb.put_multi_async(dataList)
这不会用任何细节填充数据存储。但是当我使用
ndb.put_multi(dataList)
数据存储填充良好。我如何处理异步调用。谢谢
put_multi_async return 是 Future 对象的列表。
您需要调用 wait_any 以确保在您 return 从请求之前完成看跌期权。
阅读有关 async 所有工作必须在您之前完成的内容 return。
https://cloud.google.com/appengine/docs/python/ndb/async#using
整个文档都在谈论等待。
正在尝试将数据写入我的本地数据存储,例如:
drivingJson = json.loads(drivingdata)
for data in drivingJson:
keys = getKey()
index = 1
dataList = list()
for nodeData in data:
self.response.write(keys)
self.response.write("<br>")
lat = nodeData['lat']
lng = nodeData['long']
color = nodeData['color']
timestamp = datetime.datetime.strptime(nodeData['timestamp'], "%Y-%m-%d %H:%M:%S")
saveDrivingData = DrivingObject(
index = index,
lat = float(lat),
lng = float(lng),
timestamp = timestamp,
sessionKey = str(keys),
color = int(color)
)
dataList.append(saveDrivingData)
index +=1
ndb.put_multi_async(dataList)
这不会用任何细节填充数据存储。但是当我使用
ndb.put_multi(dataList)
数据存储填充良好。我如何处理异步调用。谢谢
put_multi_async return 是 Future 对象的列表。 您需要调用 wait_any 以确保在您 return 从请求之前完成看跌期权。
阅读有关 async 所有工作必须在您之前完成的内容 return。
https://cloud.google.com/appengine/docs/python/ndb/async#using
整个文档都在谈论等待。