将对象写入 Appengine 数据存储区后,我需要等待多长时间才能读取它?

How long do I need to wait after writing an object to appengine datastore can I read it?

我有一个正在写入数据存储的实体,如下所示:

new_entity = ModelOb()
new_entity.interesting = True
new_entity_key = new_entity.put()
new_entity_key_urlsafe = new_entity_key.urlsafe()

我想稍后打电话给实体。我发现可以使用查询来调用它,例如

the_entity = ModelOb.query().filter(ModelOb.interesting = True).get()

我需要在初始写入后等待一段时间(几秒钟),否则它 returns 为空。我的问题是如果我使用

the_entity = ndb.Key(urlsafe = new_entity_key_urlsafe).get() 

是我需要等待的时间吗?

如果您使用密钥检索实体,那么您根本不需要等待。放好实体就可以了

如果您通过查询检索实体,则需要稍等片刻。几秒钟通常就足够了,但没有时间限制,您可以保证在这之后能够检索到该对象。不管你等多久,总是有实体不可用的可能性,但这种可能性在几秒后真的很小。