我使用last_touch_date DateTimeProperty作为使用auto_now=True
标志修改应用程序数据存储区中实体的方法。
当用户发布实体时,它会收到last_touch_date作为将来更新的参考。
但是,当我之后检查实体的last_touch_date时,我总是会在写入之后和之后很快找到此属性之间的略微增量。我觉得这是高一致性模型的结果。
这是否已知行为?除了自己管理这个属性之外还有解决方法吗?
答案 0 :(得分:2)
不,这不是由于HRD - auto_now纯粹是在客户端库中实现的。在编写实体之后,属性的值与写入数据存储区的内容不对应,而是与上次读取的内容相对应。我不确定你会为一个全新的实体看到什么,但它可能与写的不一样。
如果你切换到NDB,你会发现auto_now表现得更合理。 : - )