我注意到在模型上调用save()后无法保证数据库是同步更新的.
def save(request, id)
product = ProductModel.objects.find(id = id)
product.name = 'New Product Name'
product.save()
return HTTPResponse('success')
在客户端,我等待上述方法的响应,然后执行检索产品列表的findAll方法.返回的产品列表包含更新产品名称的旧值.
但是,如果我延迟产品列表的请求,那么它包含新值,就像它应该的那样.
这意味着如果在将新值写入数据库之前触发,则返回HTTPResponse(‘success’).
如果以上是真的,那么只有在数据库更新后才能返回HTTP响应.
解决方法:
您应该更突出地提到App Engine.我已将它添加到标签中.
这肯定是因为你对GAE缺乏了解,而不是与Django有任何关系.您应该阅读eventual consistency in the datastore上的GAE文档,并适当地构建模型和查询.
使用标准关系数据库运行的普通Django不会出现此问题.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。