如何从云数据存储中检索子实体,而不在nodejs中传递父键

问题描述 投票:0回答:1

我有2种,

  • 儿童

在上述种类中,子种类具有关联了父键的实体。在不传递父密钥的情况下,我需要根据子密钥过滤子项,在这种情况下,我没有父密钥,我只有子密钥/ ID。

const query = datastore.createQuery('Child')
                       .filter('__key__', '=', datastore.key(['Child', 123]))

奇怪的是,如果我将运算符传递为>,它将给出记录,但是我需要精确的键匹配,我也需要解释,

如果我必须添加复合索引,如何为上述关系添加?

node.js filter google-cloud-datastore datastore datastore-admin
1个回答
0
投票

您如何分配子实体密钥ID?如果使用分配ID api,则该API不能保证跨属于不同父实体的子实体的唯一性。结果,即使使用单独的索引,您也无法唯一地查询子项。

一种方法是为顶级实体分配ID,然后将该ID用作子实体的属性。然后,您可以使用该属性进行查询,并获得与之关联的唯一子项。

© www.soinside.com 2019 - 2024. All rights reserved.