【问题标题】:Google App Engine KeyPropertyGoogle App Engine 密钥属性
【发布时间】:2017-08-22 04:33:31
【问题描述】:

KeyProperty 有什么好处?如果我可以使用 user_id 和 id 连接两个实体

   class User(ndb.Model):

        name = ndb.StringProperty()

   class Attend(ndb.Model):
        user_id = ndb.IntegerProperty()
        date = ndb.DateProperty()

User(id=1,name="xyz)
Attend(user_id = 1, date = "xyz")

【问题讨论】:

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


    【解决方案1】:

    在 ID 上存储 KeyProperty 有几个小好处:

    • x.user_key.get() 比 ndb.Key(Attend, x.user_id).get() 更容易
    • 密钥已完全指定,因此它所引用的实体毫无疑问,但对于 ID,您还需要知道实体类型。

    这些都是很小的,所以你可以做任何一个。我有时会存储密钥,有时会根据其他因素存储 ID。

    【讨论】:

    • 在第二个项目符号处,如果适用,还需要知道父键
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-25
    • 2018-12-03
    相关资源
    最近更新 更多