【问题标题】:datastore only matches root ancestor数据存储仅匹配根祖先
【发布时间】:2019-01-23 12:49:15
【问题描述】:

我有这样的结构。

User -> Language -> Property: value

当我查询时:

select * from Property where __key__ has ancestor(User, 'me')

它返回我的属性列表。

当我查询时

select * from Property where __key__ has ancestor(Language, 'en')

什么都不返回。

在属性中,我可以看到谷歌控制台 UI 确实显示了正确的层次结构。对我来说奇怪的是它似乎匹配 root 父级而不是树中的中间链接。

这里有什么我遗漏的吗?

【问题讨论】:

    标签: google-cloud-datastore gql


    【解决方案1】:

    在您的第二个查询中,您实际上是在寻找带有键(Language, 'en')的根实体。要使第二个查询正常工作,您需要执行以下操作:select * from Property where __key__ has ancestor KEY(User, 'me', Language, 'en')

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多