繁体   English   中英

NDB数据存储写入确认

[英]NDB datastore write confirmation

每当将字段更新或添加到数据存储区时,是否激活任何标志?

我有一个修改字段的编辑处理程序(很明显),但是当我返回显示所有项目的页面时,这些字段将保持不变,直到再次刷新页面为止。 我正在做的就是简单地将(self.redirect)重定向到发布所有项目的页面。

您正在看到“最终一致性”的结果。 从实际的角度来看,您可以考虑采用多种策略来解决此问题(一些技术上的问题,有些只是UI的替代方案)。 这里有几点要考虑:

  • 使用实体组和祖先查询从查询​​中获得强一致性(如上述评论中Zig提供的链接中所述)
  • 不要立即将它们重定向回列表页面,而应通过“字段更新”消息将其带到详细信息(或编辑)页面。 当他们返回列表页面时,它将保持一致。
  • 执行更新时,将当前更新的值的副本存储在唯一键下的memcache中,然后使用包含该键的额外标志重定向到列表页面。 然后,列表页面将使用该键(如果提供)将memcache条目中刚更新的值获取并将其合并到结果查询列表中。

您可以使用DateTime属性的auto_now选项:

last_updated = ndb.DateTimeProperty(auto_now=True)

此处将对此进行更详细的描述: 如何在ndb的异步操作中确定'auto_now_add'的值?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM