如何在GAE Python中创建子实体和父实体?

时间:2014-04-12 01:50:41

标签: python google-app-engine python-2.7

我的应用程序中有以下数据库模型:

class Account(ndb.Model):
    username = ndb.StringProperty()
    userid = ndb.IntegerProperty()
    email = ndb.StringProperty()

class Post(nbd.Model):
    text = nbd.StringProperty()

如何告诉程序“很多帖子属于一个帐户”?

谢谢!

1 个答案:

答案 0 :(得分:1)

我认为有几种方法。一种简单的方法是在Post模型上添加另一个字段,将其与帐户绑定。例如假设所有帐户都有唯一的userid

def Post(ndb.Model):
    text = ndb.StringProperty()
    userid = ndb.IntegerProperty()

现在,如果你有一个帐户,你可以得到它"孩子"通过查询用户标识与帐户的用户标识相同的位置。

第二种方法是构建数据以实现强大的一致性"使用"ancestor paths"。然后,您可以通过"ancestor query"来获取帖子。