Python 为什么db.Model put方法成功了,但没有返回结果?

Python 为什么db.Model put方法成功了,但没有返回结果?,python,google-app-engine,google-cloud-datastore,Python,Google App Engine,Google Cloud Datastore,我试图创建一种类型的实体,然后将其db.Key存储在另一种类型的db.ReferenceProperty的现有实体中 在页的处理程序中,在/test中: 根据,所以我认为这应该在b.refA中存储对a的引用 但是,不会存储任何内容。请注意,不会引发TransactionFailedError异常,并且存储了的新实体 我已经通过记录存储A的结果排除了b无法放回的可能性-它在那里不会返回任何结果。请往下看,是否要解释一下?您不能改用祖先查询和父子关系吗?如果您不必担心冻结实体组,那么这可能会比您尝试

我试图创建一种类型的实体,然后将其db.Key存储在另一种类型的db.ReferenceProperty的现有实体中

在页的处理程序中,在/test中:

根据,所以我认为这应该在b.refA中存储对a的引用

但是,不会存储任何内容。请注意,不会引发TransactionFailedError异常,并且存储了的新实体


我已经通过记录存储A的结果排除了b无法放回的可能性-它在那里不会返回任何结果。

请往下看,是否要解释一下?您不能改用祖先查询和父子关系吗?如果您不必担心冻结实体组,那么这可能会比您尝试执行的操作更容易。这种关系对于这些模型来说没有任何意义。我所尝试的[应该不会是]困难的,就我从文档中可以看出,上面的内容应该是有效的,而且它永远不会返回任何内容。我完全同意你的观点,它不应该以这种方式发生,我只是想找出一个快速而肮脏的解决方法。@Julldar谢谢,我很感激:我最终只是存储并查询了它,这显然是不可取的,但至少是可行的。
class A(db.Model):
    #...

class B(db.Model):
    refA = db.ReferenceProperty(A)
    #...
b = existingEntityB
b.refA = A(
    #...
).put()
b.put()