0


您将如何在两个不同的实体模型之间创建关系?

当我尝试这个时,我得到一个错误:

class Spec(ndb.Model):
    userKey = ndb.KeyProperty(kind=User)

class User(ndb.Model):
    specs = ndb.KeyProperty(kind=Spec, repeated=True)

据我了解,该错误源于在定义之前引用用户。我做了以下解决它,我使用了 get_by_id,但我不喜欢这个解决方案:

class Spec(ndb.Model):
    userKey = ndb.IntegerProperty()

class User(ndb.Model):
    specs = ndb.KeyProperty(kind=Spec, repeated=True)

您将如何解决这个问题,以便我可以像第一个示例中那样定义我的模型?更好的是,您将如何在自己的文件/模块中定义每个类。

我尝试关注这篇文章,但它似乎已经过时并且与 ndb 无关。 https://developers.google.com/appengine/articles/modeling

谢谢

4

1 回答 1

2

文档所示,kind参数可以是字符串。所以使用kind='User'.

于 2013-09-22T12:59:03.523 回答